使用ETW EventSources与常规EventLog API有什么好处?

时间:2013-09-20 16:20:22

标签: logging .net-4.5 etw

我们目前正在调查更换系统上的日志记录。在许多地方,我们已经在使用常规的EventLog API,如果不存在,它会自动创建事件源。

我想知道将代码转换为正确使用EventSource而不是仅使用常规EventLog API(这非常容易使用)有多大好处。这值得吗?

我们希望实现日志记录(我们想要了解单个成功/错误/信息/警告状态事件)以及跟踪。

1 个答案:

答案 0 :(得分:1)

Eventlog是从Vista开始的内部ETW(仅供参考)。

对于跟踪事件日志没有帮助。您将使用太多条目浮动事件日志。使用Eventsource,在您收听数据之前不会发送数据(xperf,WPR,PerfView),因此这不会影响性能。

如果您仍需要Eventlog条目,您还可以使用EventSource写入Eventlog。

微软几周前发布了NuGet Package of Microsoft EventSource Library

Microsoft在此解释了如何使用它:

<强> Announcing the EventSource NuGet Package – Write to the Windows Event Log

使用Eventsource时,您可以获得also adding Kernel providers with xperf/WPR like CPU or DISK and you can see how your application impacts the system的巨大好处。