Hello all,
we are migrating from Xymon to Icinga2 due to the lack of IPv6 support. I am having problems with the following feature from Xymon: There is a file called “bb-proctab”, the content of which I have noted here:
# bb-proctab: configuration file for process checking
#
# Format:
#
# host:proc list for yellow : proc list for red
# localhost:proc list for yellow : proc list for red
#
# host can be FQDN (fully qualified domain name) or
# just a plain hostname but it is preferred that you
# use a FQDN.
# localhost: using this specifies that the processes
# specified on the line are to be tested on all clients
#
# To make matching more precise, try adding a part of the
# path if possible (/usr/sbin/httpd)
#
# The ! can precede a process to specify that is must not
# be running: i.e. !httpd
# httpd;0 is equivalent to !httpd
#
# You can also specify a process with it's arguments using the
# "" construct: i.e. "httpd -DSSL"
#
# The same host can be specified on multiple lines to aid readability
#
# You can add directives to specify how many processes
# must be running. The directive is specified by delimiting
# it with the process name with a ';'. Valid directives are:
# httpd;999 - Exactly 999 instances of httpd must be running
# httpd;=999 - same as httpd;999
# httpd;<=999 - Less or equal to 999 instances of httpd must be running
# httpd;>=999 - More or equal to 999 instances of httpd must be running
# httpd;<999 - Less than 999 instances of httpd must be running
# httpd;>999 - More than 999 instances of httpd must be running
#
# Note: If you use this construct with a multi word entry:
# i.e. "httpd -DSSL;=999"
# Make sure the ;=999 construct is within the ""
#
# If you put a process with no directives then it is
# test condition is that at least 1 process must be running
# It keeps backward compatibility
: sshd :
localhost: sendmail;<=2 bbrun !xntpdd : httpd;>=16
localhost : :snmpd "sleep 30;<6"
www.bobo.com : inetd : bbd
www: inetdd : bbdd
We are now trying to implement this with Icinga. My idea was to do this via check_procs, but I’m still missing the way how I can define the number of running processes per service.
Someone has already implemented this?
Greetings
Stephan