我想使用 EventSource
触发 ETW 事件,并使用 Windows Performance Analyzer 查看它们。
我有一个基本的 EventSource
:
[EventSource(Name = "BasicEventSource")]
public class ETWLogger : EventSource
{
#if DEBUG
private const bool ThrowOnError = true;
#else
private const bool ThrowOnError = false;
#endif
private ETWLogger(bool throwOnError) : base(throwOnError) { }
private static ETWLogger _log;
public static ETWLogger Log
{ get { return _log ?? (_log = new ETWLogger(ThrowOnError)); } }
private static class Keywords
{
public const EventKeywords Perf = (EventKeywords) 1;
}
[Event(1, Keywords = Keywords.Perf, Level = EventLevel.Informational)]
public void Startup() { WriteEvent(1, "StartUp"); }
}
当我使用Windows性能记录器(WPR)进行录制时,在Windows性能分析器(WPA)的通用事件图表中看不到我的提供者或事件。
谢谢您的时间:)