WCF的追踪分析工具——SvcPerf

时间:2022-04-23
本文章向大家介绍WCF的追踪分析工具——SvcPerf,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Microsoft最近发布了SvcPerf,它是一个端到端的基于Windows事件追踪(ETW)的追踪查看器,可用于基于清单的追踪。你能够通过这个工具查看ETL文件或者实时跟踪会话,还能创建自定义的查询。

这个端到端的追踪分析工具基于Linq over Traces(TX),可以用于WCFWF以及其他基于活动的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说。

查看英文原文SvcPerf - Trace Analysis Tool for WCF Released

Sample ETW trace for WCF

针对 Windows 的 WCF 服务和事件跟踪