Condividi tramite


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.