Partager via


Classe System.Diagnostics.Tracing.EventWrittenEventArgs

Cet article vous offre des remarques complémentaires à la documentation de référence pour cette API.

La EventWrittenEventArgs classe fournit des données pour le OnEventWritten rappel.

Chaque fois qu’un événement est distribué à un EventListener, le EventListener.OnEventWritten méthode de rappel est appelée. Il est passé un EventWrittenEventArgs instance qui contient les informations associées à l’événement. Toutes les valeurs de propriété de la EventWrittenEventArgs classe sont valides uniquement pendant le rappel.

Les sections suivantes contiennent des informations supplémentaires sur la personne EventWrittenEventArgs propriétés.

Propriété ActivityId

Lorsque vous utilisez System.Activities.Activity et ses classes dérivées, les threads peuvent être marqués comme ayant une activité qui s’y rapportent. Le ActivityId propriété retourne l’ID d’activité du thread qui a consigné l’événement. Notez que les threads n’ont pas à avoir une activité, dans, auquel cas cette propriété renvoie Guid.Empty.

Propriétés OSThreadId et TimeStamp

En commençant par .NET Core 2.2, EventListener objets peuvent s’abonner aux événements de runtime natif (par exemple, les événements de GC, JIT et threadpool) en plus des événements émis par EventSource objets. Dans les versions précédentes de .NET Core et toutes les versions de .NET Framework, l’ID de thread et l’horodatage peuvent être collectés à partir de l’environnement, car ils sont distribués de manière synchrone sur le même thread que celui qui les a émis. Pas tous les événements de runtime natif peuvent être distribués de façon synchrone, toutefois. Certains événements, tels que les événements de GC, émis lorsque géré l’exécution du thread est suspendue. Ces événements sont mis en mémoire tampon dans le code natif et sont envoyés à l’aide d’un thread de répartiteur une fois que le code managé peut exécuter à nouveau. Étant donné que ces événements sont mis en mémoire tampon, l’environnement ne peut pas servir à récupérer de façon fiable l’ID de thread et l’horodatage. Pour cette raison, en commençant par .NET Core 2.2, les ID de thread et les informations d’horodatage sont disponibles en tant que membres de la EventWrittenEventArgs classe.

Propriété de RelatedActivityId

Une activité associée est une activité qui est étroitement associée à l’objet actuel. En règle générale, il est soit l’activité qui a provoqué l’activité en cours (événements avec le Start opcode généralement cela) ou une activité qui a été créée par l’objet actuel (événements avec le Send opcode généralement cela). Lorsqu’il est utilisé, le RelatedActivityID soit passée explicitement par la méthode effectuant la journalisation. Nombre d’événements ne transmettez pas une RelatedActivityId, auquel cas cette propriété retourne Guid.Empty.