为什么我应该在标准.NET Event Tracing for Windows (ETW)上使用EventLog class,反之亦然?知道我们将使用很多性能计数器会影响决策吗?

我到目前为止所知道的:


ETW应该为perform much better
ETW需要整合很多工作(例如.NET Event Tracing for Windows
通过选择ETW中的标准通道之一(例如,应用程序,系统),事件日志中可以获得相同的信息。

最佳答案

ETW具有许多优点。

首先,在.NET 4.5中,它将更加简单易用。 4.5中的EventSource类极大地简化了从代码内部创建事件的过程。

但是,即使没有此功能,ETW仍具有一些巨大的优势,尽管它的工作原理通常不同,因此其目的与EventLog不同。

EventLog实际上是为记录而设计的。另一方面,ETW允许您在整个系统的上下文中跟踪应用程序的进度。当您开始收集ETW事件时,您是在系统的基础上收集它们的,这不仅使您可以跟踪应用程序,还可以查看与系统运行有关的事件。通过使用诸如PerfView之类的工具,您可以查看应用程序中特定部分的工作方式,同时查看框架和整个Windows的情况。

关于.net - 为什么要在EventLog上使用ETW,反之亦然?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9611122/

10-13 07:09