System.Diagnostics.Tracing.EventWrittenEventArgs 類別

本文提供此 API 參考文件的補充備註。

類別 EventWrittenEventArgs 會提供回 OnEventWritten 呼的數據。

每當事件分派至EventListener,則EventListener.OnEventWritten叫用回呼方法。 它會傳遞EventWrittenEventArgs執行個體,包含事件相關聯的資訊。 所有的屬性值的EventWrittenEventArgs類別在回呼期間才會有效。

下列各節包含個別的其他資訊EventWrittenEventArgs屬性。

ActivityId 屬性

當使用System.Activities.Activity和其衍生的類別,執行緒可以標示為有與其相關聯的活動。 ActivityId屬性會傳回記錄此事件之執行緒的活動識別碼。 注意執行緒不需要有活動,在此情況下,這個屬性會傳回Guid.Empty

OSThreadId] 和 [時間戳記屬性

開始使用.NET Core 2.2EventListener物件可以訂閱 (例如 GC、 JIT,以及執行緒集區事件) 的原生執行階段事件,除了所發出的事件EventSource物件。 在舊版 .NET Core 和 .NET Framework 的所有版本中,線程標識碼和時間戳可以從環境收集,因為它們會以同步方式分派在發出它們的相同線程上。 並非所有的原生執行階段事件可分派以同步方式,不過。 管理時,會發出某些事件,例如 GC 事件,會暫停執行執行緒。 這些事件會在原生程式碼中進行緩衝處理,而且之後可以再次執行 managed 程式碼會由發送器執行緒,分派。 這些事件會進行緩衝處理,因為環境不能可靠地擷取的執行緒 ID 和時間戳記。 因為這個緣故,開頭為.NET Core 2.2,執行緒 ID 和時間戳記資訊會當作成員的EventWrittenEventArgs類別。

RelatedActivityId 屬性

相關的活動是強式與目前的活動。 一般來說,這是造成目前活動的其中一個活動 (事件Startopcode 通常這樣做) 或目前所建立的活動 (事件Sendopcode 通常這樣做)。 它使用時,RelatedActivityID明確傳遞的執行記錄的方法。 許多事件未通過RelatedActivityId,這個屬性會傳回在此情況下Guid.Empty