Microsoft 最近发布了 SvcPerf ,它是一个端到端的基于 Windows 事件追踪(ETW)的追踪查看器,可用于基于清单的追踪。你能够通过这个工具查看 ETL 文件或者实时跟踪会话,还能创建自定义的查询。
这个端到端的追踪分析工具基于 Linq over Traces(TX),可以用于 WCF 、 WF 以及其他基于活动的 ETW 跟踪。你能够通过这个工具查看 ETL 文件或者实时跟踪会话,还能创建自定义的查询。
还可以在命令行提示符中使用 SvcPerf 转储原始的事件或者使用 Linq over Traces(TX)执行自定义查询。与其他工具相比,该工具还为原始的 ETL 文件提供了支持。除了 ETL 查看器之外,它还是一个构建在 LINQ to Traces (TX) 之上的查询引擎,文件数目限制为 64。
为了使用该工具,你需要双击 SvcPerf.exe 并定位到 ETL 文件(也称为 Windows 性能分析器追踪文件)。在时间轴加载之后,需要按 F5 键查看事件日志。在此之后,你可以按照用户指南中列出的步骤执行过滤操作。
还可以从命令行提示符中加载 ETL 文件
SvcPerf <File_Name>
还可以加载清单 ,一个定义了所有事件的 XML 的文件,事件提供者在写入布局信息时也会写入该文件。可以通过 Manifest 菜单下面的 Add Manifest 选项加载清单文件或者从命令行提示符中加载:
SvcPerf.exe /m:<Manifest1> /m:<Manifest2>
SvcPerf 也支持源(Source)、视图(View)和搜索(Search)这样的动态过滤器。在源模式下,过滤器会被应用到进入的事件源。视图模式允许你捕获内存中的事件源流,并在它们上面应用过滤器。搜索模式能够对载入网格的事件执行大小写不敏感的搜索。你还可以使用表达式过滤器,在官方的用户指南上对此有详细的说明。此外,可以使用 ActivityId 域或者 RelatedActivityId 域过滤指定活动的日志。
“对 WCF 开发者而言,SvcPerf 是一个非常有用的工具,” Altacode 公司的软件开发人员 Arman McHitaryan 说。
还可以使用 SvcPerf 工具执行任意表单查询,并利用 Dump() 扩展以表格或者图形化表单(例如 柱状图 或性能计数器)的方式展示结果。Microsoft 在随同工具一起发布的用户指南中详细解释了与工具相关的所有概念,同时还有源码帮助和屏幕截图。
“.NET Framework 能够提供更好的ETW 支持真的非常好。事件源是一个不错的开始,但是因为缺乏通道支持事件查看器不能获得好的可见性,” Colin Bowern 说。
评论