Classe System.Diagnostics.Tracing.EventWrittenEventArgs

Observação

Este artigo fornece observações complementares à documentação de referência para esta API.

A EventWrittenEventArgs classe fornece dados para a chamada de retorno OnEventWritten.

Sempre que um evento é enviado para um EventListener, o método de callback EventListener.OnEventWritten é invocado. É passada para uma EventWrittenEventArgs instância que contém informações associadas ao evento. Todos os valores de propriedade da classe EventWrittenEventArgs são válidos somente durante o callback.

As seções a seguir contêm informações adicionais sobre propriedades individuais EventWrittenEventArgs .

Propriedade ActivityId

Ao usar System.Activities.Activity e suas classes derivadas, os threads podem ser marcados como tendo uma atividade associada a eles. A ActivityId propriedade retorna a ID de atividade do thread que registrou o evento. Observe que os threads não precisam ter uma atividade, caso em que essa propriedade retorna Guid.Empty.

Propriedades OSThreadId e TimeStamp

A partir do .NET Core 2.2, EventListener os objetos podem inscrever-se em eventos nativos de runtime (como GC, JIT e eventos de threadpool), além de eventos que objetos EventSource emitem. Em versões anteriores do .NET Core e em todas as versões do .NET Framework, a ID do thread e o carimbo de data/hora podem ser coletados do ambiente, porque eles são despachados de forma síncrona no mesmo thread que os emitiu. No entanto, nem todos os eventos de tempo de execução nativos podem ser despachados de forma síncrona. Alguns eventos, como eventos GC, são emitidos quando a execução do thread gerenciado é suspensa. Esses eventos são armazenados em buffer no código nativo e são despachados por um thread do dispatcher assim que o código gerenciado pode ser executado novamente. Como esses eventos são armazenados em buffer, o ambiente não pode ser usado para recuperar de forma confiável a ID do thread e o carimbo de data/hora. Por isso, a partir do .NET Core 2.2, as informações de ID de thread e carimbo de data/hora estão disponíveis como membros da classe EventWrittenEventArgs.

Propriedade RelatedActivityId

Uma atividade relacionada é uma atividade que está fortemente relacionada com a atual. Normalmente, é a atividade que causou a atividade atual (eventos com o Start opcode normalmente fazem isso) ou uma atividade que foi criada pelo atual (eventos com o Send opcode normalmente fazem isso). Quando é usado, o RelatedActivityID é explicitamente passado pelo método que faz o registro. Muitos eventos não passam um RelatedActivityId, caso em que esta propriedade retorna Guid.Empty.