EventProviderTraceListener 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
TraceSource 的接聽項,其負責將事件寫入至 ETW 子系統。
public ref class EventProviderTraceListener : System::Diagnostics::TraceListener
public class EventProviderTraceListener : System.Diagnostics.TraceListener
type EventProviderTraceListener = class
inherit TraceListener
Public Class EventProviderTraceListener
Inherits TraceListener
- 繼承
範例
private static Guid providerId = new Guid("{B3F0C8FC-E8A8-4868-8901-1465E8A2F41B}");
EventProviderTraceListener listener = new EventProviderTraceListener(providerId.ToString(), "Test Listener", "::");
// You should use the All default level and control the level using the
// ETW session; otherwise, you may not log all the events requested by the
// session.
TraceSource source = new TraceSource("MyProvider", SourceLevels.All);
source.Listeners.Add(listener);
source.TraceData(TraceEventType.Warning | TraceEventType.Start, 2, new object[] { "abc", "def", true, 123 });
source.TraceEvent(TraceEventType.Warning, 12, "Provider guid: {0}", new object[] { providerId });
source.TraceInformation("string {0}, bool {1}, int {2}, ushort {3}", new object[] { "abc", false, 123, (UInt32)5 });
備註
所有事件數據 (追蹤或偵錯來源事件) ,都會以字串的形式寫入 ETW 子系統。 數據元素會以逗號分隔。 若要指定不同的分隔符,請使用 Delimiter 屬性。
新增接聽程式以 System.Diagnostics.TraceSource 向 ETW 子系統註冊提供者。 您必須使用 Logman.exe 可執行程式建立 ETW 追蹤工作階段 (或類似) ,才能將事件寫入記錄檔。
您不需要指令清單來取用接聽程式的事件,因為事件數據是單一字串。
當您呼叫 System.Diagnostics.TraceSource 方法來寫入事件時,您會傳遞 System.Diagnostics.TraceEventType 列舉值。 列舉包含層級和關鍵詞值。 當您從 ETW 工作階段啟用追蹤接聽程式提供者時,您指定的層級值可以是與下列 System.Diagnostics.TraceEventType 其中一個列舉值相關聯的值:
重大 (值為 1)
錯誤 (值為 2)
資訊 (值為8)
詳細資訊 (值為16)
警告 (值為 4)
您為工作階段指定的關鍵字值可以是與下列 System.Diagnostics.TraceEventType 其中一個列舉值相關聯的值:
繼續 (值為 2,048)
開始 (值為 256)
停止 (值為 512)
暫止 (值為 1,024)
傳輸 (值為 4,096)
建構函式
EventProviderTraceListener(String) |
使用指定的提供者識別項,初始化 EventProviderTraceListener 類別的新執行個體。 |
EventProviderTraceListener(String, String) |
使用指定的提供者識別項和接聽項的名稱,初始化 EventProviderTraceListener 類別的新執行個體。 |
EventProviderTraceListener(String, String, String) |
使用指定的提供者識別項、接聽項的名稱和分隔符號,初始化 EventProviderTraceListener 類別的新執行個體。 |
屬性
Attributes |
取得在應用程式組態檔中定義的自訂追蹤接聽程式屬性。 (繼承來源 TraceListener) |
Delimiter |
取得或設定用來分隔寫入至 ETW 子系統事件資料的分隔符號。 |
Filter |
取得或設定追蹤接聽程式的追蹤篩選。 (繼承來源 TraceListener) |
IndentLevel |
取得或設定縮排層級。 (繼承來源 TraceListener) |
IndentSize |
取得或設定縮排的空格數目。 (繼承來源 TraceListener) |
IsThreadSafe |
取得值,指出追蹤接聽程式是否為安全執行緒。 |
Name |
取得或設定這個 TraceListener 的名稱。 (繼承來源 TraceListener) |
NeedIndent |
取得或設定值,指出是否要縮排輸出。 (繼承來源 TraceListener) |
TraceOutputOptions |
取得或設定追蹤輸出選項。 (繼承來源 TraceListener) |