Tracking individual process resource usage in cloud control



This week i was asked if cloud control could track memory and cpu usage of individual processes - so for example show me the resource usage of "someprogram.exe" over time. My initial reaction was 'no', followed by 'hmm maybe if i user metric extensions and put some effort in', followed by 'lets just have a look what it can do out of the box'.

To my pleasant surprise it can pretty much do this itself - you just need to add some minor extra details to metrics that are already being collected and it's job done.

So lets see how it's done

Now i hope everyone is aware that cloud control is not just collecting database 'stuff' it collects a huge amount of useful host information too.

If you navigate to a performance screen for a host you'll see some nice summary info


Clicking around a bit and you find that you have loads of history of cpu/memory etc and in fact loads of metrics about all sorts of things are being collected.

The one that i discovered to be of interest is located under
Host-> Monitoring ->Program resource utilization


This just summarizes everything for all processes from all users but in tempts us with the link at the bottom 'click here'.

When you do 'click here' you get this screen


And it's pretty disappointing - not anything that looks like what i want

However switching to all metrics view reveals something more promising


If i click the multi pencil thing at the end - we get this - which looks to be exactly what i want - however i couldn't see how to add anything new - it looked like the add button circled was adding something further up (at least to me anyway) - but that is actually what you need to do....


So we click it to add a new row and fill it in something like this


So we can type in an exact match or use wildcards - the example above finds someprogram.exe from any user account. We could even set thresholds per process if we so desired.

Once added (and adding for one metric seems to add it automatically for the whole program section) we can then see something like this


Pretty neat huh?

We can then look at individual process history (as long as the program/user pair you chose is unique - otherwise we aggregate) - see below



Can be very useful for problematic individual processes i think - especially when you can build metrics around it.

Very useful for demonstrating memory leak over time for example......


Comments