我正在尝试了解 ETW 以及如何将其集成到高性能应用程序中。
我们都知道旧的令人恐惧的 EventLog 及其非结构化(因此不是最佳的)API。
现在有一个用于高性能跟踪的新奇 API - ETW,它在 4.5 中以 EventSource 类的形式在 .NET 端获得了一个新的 API,您可以轻松地对其进行子类化(因此不再需要编写清单)。
这给我留下了很多问题,试图让它发挥作用。
- 当前建议的使用 ETW 并将事件从那里获取到事件日志的最佳方法(根据文档、指南)是什么?我这里有一个应用程序,必须编写(性能)事件并且很想使用 ETW;但事件应出现在(自定义)事件日志中。
- 有完整的例子吗?我可以找到一些,但它们都可以追溯到 .NET 4.0 时间并从清单开始。
我尝试了什么?我有一个 EventSource 正在工作,但只是未能获得有关如何让其余的下游工作从那里开始工作的正确文档。
2013年8月,Microsoft.Diagnostics.Tracing.EventSource https://www.nuget.org/packages/Microsoft.Diagnostics.Tracing.EventSource1.0.4 测试版在 NuGet 上发布。三大优势是通道支持、静态(已安装)清单支持(进入事件查看器所需的两件事)和 .NET 4.0 支持。
根据博客文章 http://blogs.msdn.com/b/dotnet/archive/2014/01/30/microsoft-diagnostics-tracing-eventsource-rtms.aspx宣布 RTM、Microsoft.Diagnostics.Tracing.EventSource“支持快速应用程序跟踪 Windows 事件日志,包括在生产中”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)