CLR 4.0中的新ETW特性到底是什么?

11

我的同事提到CLR 4.0与Windows事件跟踪相关的一些重大改进,但我找不到确切的新内容细节。有一些博客文章仅提到改进,但没有提供确切的新细节。是否有人更深入地了解它?


你看过这个吗: http://naveensrinivasan.com/2010/03/17/using-clr-4-0-event-tracing-for-windows-etw-along-with-application-etw/? - decyclone
是的,他展示了一些新功能的用途,但我正在寻找确切的新功能列表。你知道我在说什么吗? - imak
3个回答

4
这是CLR 4.0中ETW事件列表:
  1. 运行时信息ETW事件
  2. 异常抛出_V1 ETW事件
  3. 争用ETW事件
  4. 线程池ETW事件
  5. 加载器ETW事件
  6. 方法ETW事件
  7. 垃圾回收ETW事件
  8. JIT追踪ETW事件
  9. Interop ETW事件应用程序
  10. 域资源监控(ARM)ETW事件
  11. 安全ETW事件
  12. 堆栈ETW事件
如果想要了解详细的解释,您可以在msdn上阅读。
此外,XPERF无法解码带有ETW的托管堆栈,因此BCL团队在codeplex上发布了另一个工具Perfmonitor可供使用。
希望对您有所帮助。

感谢Naveen的回复和有用的链接。你的博客文章太棒了...虽然有一个抱怨....我们需要更多更多这样的文章 :) - imak

1

0

如果你深入挖掘上面的一些链接,可能会发现两个改进:一个是新的EventProviderTraceListener类,另一个是新的EventProvider类。

EventProviderTraceListener可以监听TraceSources(像任何其他TraceListener一样),并将TraceSource消息路由到ETW系统中。

EventProvider类允许您直接记录消息到ETW系统中。

这些类仅在Vista及更高版本上可用(实际上,在使用.NET框架4.0的任何操作系统上都“可用”,但它们不适用于XP及更低版本)。

我没有使用过这些类(也没有使用过ETW),但在我看来,它们使从.NET应用程序使用ETW变得更加容易。如果您想使用ETW,仍然需要做一些工作来配置ETW本身。

这是一篇描述如何使用ETW的文章。我不确定是否有关于ETW的更多最新信息。请注意,此文章是在新的.NET ETW类可用之前编写的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接