Share via

Activity.TraceIdGenerator Property


When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm.

 static property Func<System::Diagnostics::ActivityTraceId> ^ TraceIdGenerator { Func<System::Diagnostics::ActivityTraceId> ^ get(); void set(Func<System::Diagnostics::ActivityTraceId> ^ value); };
public static Func<System.Diagnostics.ActivityTraceId>? TraceIdGenerator { get; set; }
static member TraceIdGenerator : Func<System.Diagnostics.ActivityTraceId> with get, set
Public Shared Property TraceIdGenerator As Func(Of ActivityTraceId)

Property Value


  • TraceIdGenerator needs to be set only if the default Trace Id generation is not enough for the app scenario. - When setting TraceIdGenerator, ensure it is performant enough to avoid any slowness in the Activity starting operation. - If TraceIdGenerator is set multiple times, the last set will be the one used for the Trace Id generation. - Setting TraceIdGenerator to null will re-enable the default Trace Id generation algorithm.

Applies to