-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 08/09/07 04:27 PM, Marc Powell wrote: > >> -----Original Message----- >> From: [EMAIL PROTECTED] [mailto:nagios-users- >> [EMAIL PROTECTED] On Behalf Of David Knecht >> Sent: Saturday, September 08, 2007 2:21 PM >> To: [email protected] >> Subject: [Nagios-users] Concurrent Service Check Execution >> >> I'd like to force Nagios 2.9 to execute all service checks on a given >> monitored system *concurrently* (both in hard OK states as well as in >> hard non-OK states). My goal is to see how my services behave on a >> particular monitored system *at one single point in time*. >> >> Having mentioned all this I assume that concurrent service checks as >> outlined above cannot be configured in both Nagios 2.9 and 3.0. Do I >> miss anything here? Is there any circumvention? >> > > My $0.02... The nagios scheduler attempts to monitor things as close to > their scheduled interval as possible no matter what's happening and > that's about all it promises. As you've noted, you have limited control > over when checks occur and that's only for initial scheduling. There are > no real workarounds other than having a single plugin execute multiple > checks and aggregate the results or using external scripts, executed > from (f)cron or other specific timing mechanism to submit passive > results. >
I second that; Nagios isn't built for this. However I think there could be ways around it. First set your check as "Volatile" checks. Don't make them Passive check as suggested for volatile check, they must be set as "Active" and "Volatile" at the same time. The result is that your active checks will never be scheduled by Nagios (Actually Nagios will schedule them once but won't execute them. It will only execute forced checks sent trough the command pipe). Then write a daemon in your favorite language that somehow get the list of all services and hosts and send commands to Nagios to schedule all the checks for a particular time. Checks can be scheduled in advance by setting the execution time. That could be seen like plugging your own scheduler into Nagios. If you use Perl you can use Nagios::StatusLog to get the list of services (I've had a lot of trouble with Nagios::Config, so I recommend StatusLog - I can send you code examples as it isn't obvious how to retrieve host and service data from the StatusLog structures). I'm not sure what the results would look like, but I think it should end up being pretty much what you want. Of course a better method would be writing a NEB module for that given the proper hooks are already existing (being able to intercept check scheduling and instead schedule at a fixed time). If the hooks are there I think this should be fairly easy but I never wrote event brokers so I can't tell for sure... Thomas -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFG42ik6dZ+Kt5BchYRAo+dAKC3B/Sr0uIwhtAzupPJHQv1QCwyAwCgn32b cyOa2VWbLjY+HXInk8dsJEE= =pG5K -----END PGP SIGNATURE----- ------------------------------------------------------------------------- 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 [email protected] 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
