Web 服务操作上的性能计数器

本文关键字:性能计数器 操作上 服务 Web | 更新日期: 2023-09-27 18:33:16

我有一个WCF服务托管在Windows服务中,通过netTCP与wform客户端通信。

WCF 服务很久以前就托管在 IIS 中,此时我可以在性能计数器监视器中看到 WCF 服务的每个操作(performanceCounters="All"(。这样就可以轻松查看最常用的操作。

我再次需要这些性能计数器,但这次即使性能计数器设置为"全部",我也无法在性能监视器中找到它们?

我需要做什么才能让他们回来?

WCF 服务要求登录才能使用其操作,但登录是由我手动完成的,这意味着用户首先使用用户名和密码调用登录操作,如果数据不正确,则将引发 securityException。所以没有什么先进的。

Web 服务操作上的性能计数器

WCF 充满了出色的监视工具和扩展性终结点,你可以利用它们或将其挂接到自己的解决方案中。

您绝对可以开箱即用地获得某种级别的检测,http://msdn.microsoft.com/en-us/library/ms735098(v=vs.110(.aspx 本文介绍了发布这些指标所需的简单 app.config 更改。

如果你想要更详细的信息(或者只是一些尚未为你提供的信息(,你确实可以创建一个IOperationInvoker或IParamterInspector,在调用方法之前(在你的实现中(和完成后立即调用。我之前使用过这个在调用方法之前在线程上添加上下文信息,检查调用方是否正在传递他们有权使用的参数,并通过简单地在调用前后添加时间戳来衡量调用性能。查看 http://msdn.microsoft.com/en-us/library/System.ServiceModel.Dispatcher(v=vs.110(.aspx以获取 WCF 堆栈中的扩展点列表。祝你好运