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