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