etw - 是否可以在 PerfMon 中查看使用 EventSource 在 C# 中引发的自定义 ETW 事件?实时?
问题描述
我想从服务器应用程序内部引发 ETW 事件以监控性能。我想在 perfMon 或类似工具中使用这些事件,以便以图形方式查看事件。这可能吗?(perfView 在我的工作环境中不可用,无论如何也不以图形方式显示事件)
我可以简单地引发事件,我一直在使用 Ben Watsons“编写高性能 .Net 代码”一书中的示例,但是在添加新数据收集器集时无法在 perfMon.exe 中查看这些事件。
我在示例中添加了代码,创建了一个事件源
if(!EventLog.SourceExists("EtlDemo"))
{
EventLog.CreateEventSource("EtlDemo", "EtlDemoLog");
}
我怀疑 EtlDemo“事件跟踪提供程序”需要做更多的事情才能对 perfMon(可能还有 Windows 性能分析器)可见,但文档似乎很少。有任何想法吗?
解决方案
推荐阅读
- node.js - 如何在交互模式下运行 golang 应用程序
- html - :hover 仅在开发工具检查器中强制时有效
- ios - 为什么约束更喜欢调整一个堆栈的大小而不是另一个,你如何改变这种偏好?(xCode)
- machine-learning - model.predict() 中的值是什么意思?
- nearest-neighbor - 贪心算法与最近邻算法
- python - 如何在 python 中使用 aws lambda 函数调用 bash 脚本?
- java - 我从 JavaFX 中的 XML 文件中获取的数据未显示在 TableView 中
- c++ - 无法获取 Internet 连接共享的 EveryConnectionCollection
- php - 在发送到数据库之前连接具有相同名称的文本字段值
- r - 对数据帧中的所有对运行方程,输出矩阵