Count instances of application using Windows Performance Counters

performance-counters

I have a terminal services server that runs instances of a thick-client application and serves them up to users via RemoteApp. In order to do some capacity planning I would like to continuously log some performance counter data such as CPU usage, disk I/o, memory usage, etc, and see how it scales with the number of active sessions. Is there some kind of performance counter I can set up that counts up the number of active processes matching a particular name or path so that I can add that to a performance counter log and gather some data so that I can correlate # users vs resource usage?

Best Answer

There isn't an inbuilt performance counter that will do any kind of "pattern matching" on names. (Performance counters don't really work that way-- they don't take any kind of "input" parameter. They're just outputs.)

The "Processes" object tracks all running processes. I'd log the Processes object and parse the output to get a count of processes.

If each remote desktop session can be assumed to be running one instance of the application you could just track the "Active Sessions" counter in the "Terminal Services" object.

Related Topic