通过ETW我的意思是“Windows的事件跟踪”。

根据我的实验,一个优点是,虽然按照设计,它偶尔无法在非常忙碌的条件下记录事件,否则就像你可能期望的内核功能那样正常工作。如果您希望每处理器缓冲以避免缓存与多线程日志记录问题,ETW是城里唯一的游戏,因为据我所知,“只有内核知道”。你的线程在任何给定的瞬间真正运行的地方,特别是如果你没有指定亲和力等。

然而,界面是混乱的,如果你考虑微软推荐的相对于EventWrite()的方法,它会变得更糟。 简化程序员访问这个功能强大的内核子系统的最佳方法是什么?我对C ++界面感兴趣,但查看此问题的其他人也希望了解其他语言。

有帮助吗?

解决方案

如果您正在ETW之上寻找易于使用的C / C ++包装器,那么唯一接近的就是WPP。如果你太高级,你可能会遇到WPP的限制。请注意10月份的Microsoft PDC有用的东西;)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top