Search Exchange

Search All Sites

Nagios Live Webinars

Let our experts show you how Nagios can help your organization.

Contact Us

Phone: 1-888-NAGIOS-1
Email: sales@nagios.com

Login

Remember Me

Check_MultiProcs

Rating
0 votes
Favoured:
0
Hits
290230
Files:
FileDescription
check_multiprocsversion 0.6
Network Monitoring Software - Download Nagios XI
Log Management Software - Nagios Log Server - Download
Netflow Analysis Software - Nagios Network Analyzer - Download
Checks Multiple Processes in one go including specifics like arguments of those processes. Uses a simple config file and makes it very simple to test a whole stack of inter-related processes are running including their arguments. Supports warning and critical thresholds in addition to process arguments.
This plugin is written in Bash and allows you to check a whole stack of processes in one go as one service check. It has a simple configuration file, syntax checking, verbosity. This is a very useful wrapper around the standard check_proc plugin from the Nagios Plugins standard distribution.

This is not the only multi-process checker on Nagios Exchange but none of the others that I saw had the ability to do multiple processes and check the specifics of the *arguments* of those processes, which can be the most important part, not simply the number of processes of "bash" that are running but things like:

bash /usr/local/bin/scriptname.sh -l filename.txt -s 1 -t 2 --force

and to differentiate this from

bash /usr/local/bin/scriptname.sh -l filename2.txt -s 1 -t --force
Usage

usage: check_multiprocs -c procs.conf [ -b /path/to/check_procs ] [ -s ] [ -v ]

Options:

-c --conf The path to the configuration file to use for the test
-b --binary Specifies the path to the check_procs binary from the Nagios
Plugins standard distribution. Optional. Use this if your
check_procs is not in your path. If given, overrides
check_procs found in path.
-s --syntax-check Test the syntax of the given config file but do not
execute any tests. Returns OK is the syntax passes or CRITICAL
if there are any syntax errors
-v --verbose Increase verbosity. Use once to see process details, twice for a
little output about what the plugin is doing and three times
(or -vvv) for full debug output

Configuration file format


The procs.conf file defines the processes and their arguments, one per line.
Each line will effectively be passed to the standard check_procs plugin from
the standard distribution

processname,arguments,warn,crit


These all map to the standard arguments of check_procs.
warn and crit should be ranges (eg 1:5) or they can be blank but you must
still have the commas delimiting those blank entries eg (process,args,,)
See check_procs for more details on options.

- Hashes comment out the rest of the line in standard unix tradition
- Leading and trailing whitespace around each comma delimited item is
ignored for you formatting convenience

processname2 , arguments , warn , crit


You can omit either warn or crit, but you must have one or the other,
otherwise the test would effectively be null and always return OK, so
this is not allowed as it serves no useful purpose and is almost certainly
a configuration error.
Example Config file

#Process, Arguments , Warn , Crit
bash , scriptA.sh argX argY argZ , 1:2 ,
perl , scriptB.pl -s action , , 3:3
python , scriptC.py -s action , 2:3 , 1:5
logger , -t Name -p user.notice , 1:1 ,

Support

For feature requests, bug-fixes or anything else related to this plugin, email me at hpsekhon AT googlemail d0t com.

Considering adding support for different process states and metrics if there is demand, but I don't use this (yet) and so I decided to keep the config file as simple as possible for now.