Classe System.Diagnostics.Tracing.EventWrittenEventArgs
Questo articolo fornisce osservazioni supplementari alla documentazione di riferimento per questa API.
La EventWrittenEventArgs classe fornisce dati per il OnEventWritten callback.
Ogni volta che un evento viene inviato a un EventListener, il EventListener.OnEventWritten viene richiamato il metodo di callback. Viene passato un EventWrittenEventArgs
istanza che contiene informazioni associate all'evento. Tutti i valori delle proprietà di EventWrittenEventArgs
classe sono validi solo durante il callback.
Le sezioni seguenti contengono informazioni aggiuntive sui singoli EventWrittenEventArgs
proprietà.
Proprietà di ActivityId
Quando si usa System.Activities.Activity e le relative classi derivate, thread possono essere contrassegnati come avente un'attività associate. Il ActivityId
proprietà restituisce l'ID attività del thread che ha registrato l'evento. Si noti che i thread non sono necessario avere un'attività, nel qual caso questa proprietà restituisce Guid.Empty.
Proprietà OSThreadId e TimeStamp
A partire da .NET Core 2.2 EventListener oggetti possono sottoscrivere gli eventi di runtime nativo (ad esempio, gli eventi GC e JIT threadpool) oltre agli eventi generati da EventSource oggetti. Nelle versioni precedenti di .NET Core e di tutte le versioni di .NET Framework, l'ID del thread e il timestamp possono essere raccolti dall'ambiente, perché vengono inviati in modo sincrono nello stesso thread che li ha generati. Non tutti gli eventi di runtime nativo possono essere inviati in modo sincrono, tuttavia. Alcuni eventi, ad esempio gli eventi GC, vengono generati quando gestito viene sospeso l'esecuzione del thread. Questi eventi vengono memorizzati nel buffer nel codice nativo e vengono inviati da un thread di dispatcher dopo il codice gestito può eseguire di nuovo. Poiché questi eventi vengono memorizzati nel buffer, l'ambiente non è utilizzabile per recuperare in modo affidabile l'ID del thread e il timestamp. Per questo motivo, a partire da .NET Core 2.2, ID thread e sono disponibili come membri delle informazioni relative al timestamp di EventWrittenEventArgs
classe.
Proprietà RelatedActivityId
Un'attività correlata è un'attività che è fortemente correlata a quello corrente. In genere, si tratta di entrambe le attività che ha causato l'attività corrente (gli eventi con il Start
opcode in genere eseguire questa operazione) o un'attività che è stata creata da quella corrente (gli eventi con il Send
opcode in genere eseguire questa operazione). Quando viene usato, il RelatedActivityID
viene passato in modo esplicito per il metodo esegue la registrazione. Numero di eventi non passa un RelatedActivityId
, nel qual caso questa proprietà restituisce Guid.Empty.