Concurrent Service Check Execution

David Knecht david.knecht at anyweb.ch
Tue Oct 2 11:12:22 CEST 2007


For the records - as this might hopefully help others - I'd just like to 
report how we solved this issue.

We created a Nagios service check SC1 which is responsible for 
scheduling service checks SC2 and SC3. Since SC2 and SC3 are configured 
"is_volatile 1" as suggested by Thomas they are never scheduled/executed 
by "themselves".

SC1 basically performs two things:

1. Check the $SERVICESTATEID$ 
(http://nagios.sourceforge.net/docs/2_0/macros.html)
  of both SC2 and SC3. SC1 exits with the most critical exit code of 
both SC2 and SC3 (e. g. if SC2 returns "2" and SC3 returns "0", then SC1 
returns "2"). SC1 (as well as SC2 and SC3 - see below) is then 
re-scheduled based on its settings for normal_check_interval, 
retry_check_interval and max_check_attempts.
2. Re-schedule SC2 and SC3 to be executed at "now+n seconds" using the 
external command SCHEDULE_FORCED_SVC_CHECK 
(http://www.nagios.org/developerinfo/externalcommands/commandinfo.php?command_id=129). 
"n seconds" can be a static number or the result of a dynamic 
calculation (e. g. "60-$SERVICELATENCY$-$SERVICEEXECUTIONTIME"). SC2 and 
SC3 can be re-scheduled individually.

This way we
- can configure everything we need within Nagios configuration files (no 
need for external tools such as cron) using Nagios' scheduling capabilities
- are pretty flexible in terms of scheduling SC2 and SC3

Hope this helps...

Best regards, David


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Nagios-users mailing list
Nagios-users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nagios-users
::: Please include Nagios version, plugin version (-v) and OS when reporting any issue. 
::: Messages without supporting info will risk being sent to /dev/null





More information about the Users mailing list