Is there any ideas/methods/best-practices for monitoring processes which can exist in variable numbers on a particular server??
I know Zabbix excels at whole system monitoring, and single process monitoring, but i really am stumped on how to deal with multiple concurrent processes of the same name.
For example, I have an application which spawns a process (every process has the same binary name but different parameters after that) for every user connection.
So on my server i might have
proc1 id=proc@134
proc1 id=proc@135
proc1 id=proc@136
At any time there can be variable numbers of users on the server, and thereby variable numbers of these processes... the information i'd like to chart/trend is as follows:
(easy/medium/hard is how difficult i believe this info would be to gather)
Easy:
cumulative cpu resources
cumulative mem resources
cumulative network resources (thinking of using nethogs to gather this)
count of processes
Medium:
average cpu resources
average mem resources
average network resources
Hard:
Top 5 process IDs by CPU for a given 1 hour interval
By process&start-time recurring monitoring (so each new process that got started, aka every user's session) would get individually monitored for resource consumption during their session (you can see where this might be handy for a cloud based application)
I'm looking at using Zabbix as the basis for my "system" performance monitoring demonstration to our customers (I'm the vendor for the above mentioned software) and if i can capture these metrics i'm sold... so any help you can offer would be awesome...
I know Zabbix excels at whole system monitoring, and single process monitoring, but i really am stumped on how to deal with multiple concurrent processes of the same name.
For example, I have an application which spawns a process (every process has the same binary name but different parameters after that) for every user connection.
So on my server i might have
proc1 id=proc@134
proc1 id=proc@135
proc1 id=proc@136
At any time there can be variable numbers of users on the server, and thereby variable numbers of these processes... the information i'd like to chart/trend is as follows:
(easy/medium/hard is how difficult i believe this info would be to gather)
Easy:
cumulative cpu resources
cumulative mem resources
cumulative network resources (thinking of using nethogs to gather this)
count of processes
Medium:
average cpu resources
average mem resources
average network resources
Hard:
Top 5 process IDs by CPU for a given 1 hour interval
By process&start-time recurring monitoring (so each new process that got started, aka every user's session) would get individually monitored for resource consumption during their session (you can see where this might be handy for a cloud based application)
I'm looking at using Zabbix as the basis for my "system" performance monitoring demonstration to our customers (I'm the vendor for the above mentioned software) and if i can capture these metrics i'm sold... so any help you can offer would be awesome...
Comment