编程语言
首页 > 编程语言> > c# – EventSource vs EventProvider

c# – EventSource vs EventProvider

作者:互联网

EventSourceEventProvider课程之间的主要区别是什么?

我理解这两个类都是ETW的事件提供者.如果两者之间没有关键差异,那么利弊是什么.

我使用EventSource类只是因为我在网上发现了更多的示例/文档,并且实现Channel支持(写入事件查看器中的默认通道 – 管理,操作,分析和调试)似乎更直接,因为EventRegister类自动创建清单(描述here).

解决方法:

在.NET 3.5中,EventProvider类是使用ETW进行跟踪的唯一选项.正如documentation所述,您必须为自定义事件创建一个Instrumentation Manifest文件,该文件描述了邮件中的数据类型.这不是一件容易的事,它需要使用单独的工具,例如Manifest Generator(ecmangen.exe).有关更多信息,请参阅this post.

EventSource类是在.NET 4.5中添加的,它引入了一个simpler approach来使用ETW编写自己的事件.它们不是创建这些清单文件,而是自动为您创建,从而节省了开销.

鉴于上述情况,我认为没有任何理由使用EventProvider.正如您所提到的,EventSource更具记录性且更易于使用.

标签:c,net,etw,event-viewer
来源: https://codeday.me/bug/20190627/1308221.html