Windows性能计数器ASP.NET应用程序:为什么我的www服务实例不可见?

一位客户抱怨说,一个基于Web的工具加载非常缓慢,我想使用pipe理工具/性能来监视请求执行时间。 所以我selectASP.NET Apps v2.0.50727作为性能对象和请求执行时间作为性能计数器。 但是,在“从这个列表中select实例”中,我找不到我的网站的实例ID。 该网站是在HTTPS —这可能是问题? 任何提示都表示赞赏。

回答问题:网站本身已停止,因此未出现在实例列表中。

正如你所说,如果一个网站停止,这将发生。 性能监视器中的信息是实时的,如果应用程序池不仅启动,而且已收到一些stream量使其启动,则只有一个w3wp.exe工作进程。

除此之外,不只是当网站停止,你需要担心这一点。 性能对象是根据PID定义的。 每当应用程序池回收时,PID都会更改,这在IIS中是很常见的,所以如果您正在观察perfmon中的进程,请务必经常更新它,或者使用System Center Operations Manager这样的可以将应用程序池保持为PID为你映射。

作为一个方面,如果你还没有,下面是如何让PID显示在perfmon: http ://weblogs.asp.net/owscott/archive/2007/03/19/registry-change-for-perfmon- 和PID-data.aspx

如果在perfmon中使用pid的registry更改,则可以通过系统事件查看器findpid。

进程ID为'[pid]'服务应用程序池'[app pool]'的工作进程请求回收,因为工作进程达到了允许的处理时间限制。