Reliable way to see process-specific perf statistics on an IIS6 app pool

五迷三道 提交于 2019-12-11 04:31:26

问题


In perfmon in Windows Server 2003, there are counter objects to get per-process processor time and memory working set statistics. The only problem is that in an environment with multiple application pools, there is no way to reliably identify the correct worker process. In perfmon, they are all called "w3wp", and if there is more than one, they are w3wp, w3wp#1, w3wp#2, and so on. Even these names are unreliable - the number depends on which one started first, and obviously changes when an app pool is recycled because the process is destroyed and restarted.

I haven't found any ASP.NET-specific counters, and for some reason, my IIS object doesn't separate instances - there's only one "global" instance.

Ultimately, I just want the "% Processor Time" and "Working Set" counters for a specific IIS App Pool. Any suggestions?


回答1:


We'd always collect the stats for all the w3wp processes, and we would capture PID. This is one of the counters in the Process group.

There's a script that site in Server 2003's system32 folder called IISApp.vbs, that will list all the processes and their PIDs. You will need to run this to capture the PID's.

I'm sure there has to be a better way but this worked when we needed to do adhoc monitoring.




回答2:


The w3wp instance may not appear, if the worker process is idle for a long time . The UI interface has to be used for small course of time , so that the worker process (w3wp) can show up in the instances.



来源:https://stackoverflow.com/questions/372080/reliable-way-to-see-process-specific-perf-statistics-on-an-iis6-app-pool

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!