所以我看过很多关于使用PerfMon的帖子,以便在启用后查看WCF性能计数器。
我正在研究如何以编程方式访问端点,服务和操作性能计数器,并在我自己的自定义文件中打印出来。
首先,我需要在Wcf的配置文件中放置以下内容以启用性能计数器
<configuration>
<system.serviceModel>
<diagnostics performanceCounters="All" />
</system.serviceModel>
因此,例如,如果我只想知道端点性能计数器的一般呼叫持续时间,我想抓住呼叫持续时间性能计数器的所有实例并获得该持续时间值的平均值。
我正在考虑做以下事情: 使用:
PerformanceCounterCategory.GetCategories()
并找到我正在寻找的类别。所以我会寻找ServiceModelEndpoint类别。然后我会用
GetCounters("Calls Duration")
检索计数器的所有实例,以便我可以循环并获得平均呼叫持续时间值。
请记住,这是我第一次涉足性能计数器,我上面提到的是我想要检索我正在寻找的值的伪代码。对于那些在这方面知识渊博的人来说,上述算法是否是一种有效/好的方式来访问我需要的计数器,你是否预见到会阻止我使伪代码工作的任何复杂情况?如果您有其他方法的建议我可以实现我正在寻找的东西,请随时告诉我:D
谢谢你的时间!