Archived community.zenoss.org | full text search
Skip navigation
15010 Views 0 Replies Latest reply: Apr 16, 2009 6:01 AM by jcurry RSS
jcurry ZenossMaster 1,021 posts since
Apr 15, 2008
Currently Being Moderated

Apr 16, 2009 6:01 AM

Monitoring processes without SNMP

Cross-posted from users forum as it has comments and tests specific to 2.4 beta.

 

 


Zenoss 2.3.3 on SLES 10 (but I doubt that makes much difference!)

If I want to monitor for specific processes on a box, typically the box supports SNMP so if I put it in a class like /Device/Server/Linux it will automatically have MODELING data collector "plugins" applied, including zenoss.snmp.HRSWRunMap (use table drop-down menu for device and select More -> "Collector plugins"). If you turn up debug on zenmodeler you can see this information being collected using the SNMP Host Resources MIB (just run zenmodeler run -v 10 -d <your device name> ).

If you go to the device's OS page, you can see configured Processes and clicking on the Process Name entry takes you (hopefully) to graphs of cpu, memory and count for that process. From the graphs page, if you go to the template tab it show that the standard /Devices/OSProcess template is used to collect this data. However the Data Sources for OSProcess are rather strange - the type is SNMP but there is no MIB OID to supply the data! I expected this to be getting data from the Host Resources hrSWRunPerf table?? What actually populates these graphs ('cos there IS data there and it looks reasonable)?

Next step. Suppose you can't use SNMP to get process info from a box. You can assign it to /Devices/Server/Cmd and it gets a bunch of MODELING data collector "plugins", including zenoss.cmd.linux.process. Now if you run zenmodeler in debug you can see that simple operating system commands are run over ssh (provided your ssh authorization is all setup). You can see a line like:

Quote:

DEBUG:zen.SshClient:command ps axho comm,args

followed by a whole bunch of lines which is obviously output from the above ps command (note that there are no Nagios plugins involved here - it's just the ps command run over ssh). However, if processes die, they never get reported in Zenoss - status always stays green (and I don't think it is the "display bug reported in ticket 3780 and I have restarted zenprocess....). I have turned up debugging in zenprocess and can see reports on other processes on other devices that are performing process checks with SNMP but there appears to be no reference whatsoever to the process being checked on my ssh device.

Next problem, if I drill into the process name to see graphs of cpu, memory and count for this process, the cpu and mem have no graph at all between the < and > bars. The count graph exists but has "nan" values - not available. Not surprising really as it is still using the single /Devices/OSProcess template described above which "suggests" it using SNMP.

So,
1) Is this process monitoring by ssh commands working as designed and, basically, it doesn't work (even though it does get the data)
2) Has anyone got this to work?
3) Even with standard SNMP process modelling using the HRSWRunMap data collector, what is actually populating the OSProcess performance data template?
4) Is there any chance of getting the performance data if you are using the zenoss.cmd.linux.process collector?

Cheers,
Jane
Back to top
View user's profile Send private message Visit poster's website
jmp242
Rank: Zen Master


Joined: 07 Mar 2007
Posts: 1244


PostPosted: Wed Apr 15, 2009 6:57 pm Post subject: Process monitoring with / without SNMP Reply with quote
As to the SSH modeling, it is far more limited I believe in 2.3.3 than
SNMP, but is supposed to be much improved in 2.4, one of the main areas
updated for 2.4.
--
James Pulver
Information Technology Area Supervisor
LEPP Computer Group
Cornell University

PostPosted: Thu Apr 16, 2009 9:52 am Post subject: Reply with quote Edit/Delete this post Delete this post
I have the same test running on my Zenoss 2.4 beta system (strictly it is 2.3.285 upgraded from a 2.2 system). I also have the new Linux zenpack, although this only seems to provide cpu, not process collectors. I have enabled the standard cmd.linux.process collectors for my 2 non-SNMP systems and I see exactly the same thing as in the 2.3.3 system. Zenmodeler accurately picks up the processes that are running but it looks like zenprocess doesn't even attempt to do anything about command-monitored processes so I never see any status changes and I never get any process cpu / memory / count data for my graphs.

Any more thoughts, anyone?
Cheers,
Jane

More Like This

  • Retrieving data ...