Monitoring process-level performance counters in Windows Perfmon
- by Dennis Kashkin
I am sure everybody has bumped into this. As you scale a web server that uses multiple application pools, it's valuable to collect performance counters for each application pool 24x7. The only problem is - Perfmon links counters to application pools by process ID, so whenever an application pool recycles you have to remove the counters for the old process ID and add them for the new process ID. Since application pools recycle quite often (whenever you release a new version or patch the server), it's a major pain.
I wonder if anybody has found a workaround for this? Perhaps a programmatic way to update Perfmon settings whenever an application pool starts up or some way to reference application pools by name instead of process ID?
I'll appreciate any hints on this!