I have long been looking for a solution to this problem, and have yet to find anything (if you know of something similar in nature please let me know)...
Essentially i have a server based application which when a user logs into the application through their client based GUI a new process is created on the server, and exists for as long as the user is logged in. When the user logs out, the process disappears...
Can you think of a way to monitor these processes?...
Currently I'm using SNMP to grab the process CPU Util/Mem Util for a process... but the problem i have is that it is only monitored for as long as the object exists (leading to a lot of metric adding/removing/etc)... I'd prefer a way that the system could automagically pickup on new processes, add them to be monitored, track them while they exist, then once gone the data collected against that process is stored but no further monitoring is done...
Luckily each process id in this case is unique (though that creates equal problems with parsing as well)... but i would imagine an extrapolation of this idea where you might monitor java.exe for example but have to pull some other field to make that particular INSTANCE of java.exe unique...
It seems a tall order, but I was hoping the brilliance here might have some idea...
The closest i've gotten is zenoss's ability to write a regex for matching a process... but it only adds the process when you remodel (re-add) the host and it never stops trying to monitor them so you end up with THOUSANDS of processes building up until it's going nuts just trying to keep up.
Essentially i have a server based application which when a user logs into the application through their client based GUI a new process is created on the server, and exists for as long as the user is logged in. When the user logs out, the process disappears...
Can you think of a way to monitor these processes?...
Currently I'm using SNMP to grab the process CPU Util/Mem Util for a process... but the problem i have is that it is only monitored for as long as the object exists (leading to a lot of metric adding/removing/etc)... I'd prefer a way that the system could automagically pickup on new processes, add them to be monitored, track them while they exist, then once gone the data collected against that process is stored but no further monitoring is done...
Luckily each process id in this case is unique (though that creates equal problems with parsing as well)... but i would imagine an extrapolation of this idea where you might monitor java.exe for example but have to pull some other field to make that particular INSTANCE of java.exe unique...
It seems a tall order, but I was hoping the brilliance here might have some idea...
The closest i've gotten is zenoss's ability to write a regex for matching a process... but it only adds the process when you remodel (re-add) the host and it never stops trying to monitor them so you end up with THOUSANDS of processes building up until it's going nuts just trying to keep up.