EventProviderTraceListener 类   
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
用来向 ETW 子系统中写入事件的 TraceSource 的侦听器。
public ref class EventProviderTraceListener : System::Diagnostics::TraceListenerpublic class EventProviderTraceListener : System.Diagnostics.TraceListenertype EventProviderTraceListener = class
    inherit TraceListenerPublic 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) |