Multi-level service dependencies... not working
Stanley Hopcroft
Stanley.Hopcroft at IPAustralia.Gov.AU
Tue Jun 17 15:45:08 CEST 2003
Dear Gentlemen,
I am writing to beg your pardon for talking at least some nonsense about
service dependencies.
The docco is quite plain (v1.0),
'How Service Dependencies Are Tested
Before Nagios executes a service check or sends notifications out for a
service, it will check to see if the service has any dependencies.
If it doesn't have any dependencies, the check is executed or the
notification is sent out as it normally would be.
If the service does have one or more dependencies, Nagios will check
each dependency entry as follows:
1.Nagios gets the current status* of the service that is being
depended upon.
2.Nagios compares the current status of the service that is being
depended upon against either the execution or notification failure
options in the dependency definition (whichever one is relevant at the
time).
3.If the current status of the service that is being depended upon
matches one of the failure options, the dependency is said to have
failed and Nagios will break out of the dependency check loop.
4.If the current state of the service that is being depended upon
does not match any of the failure options for the dependency entry, the
dependency is said to have passed and Nagios will go on and check the
next dependency entry.
This cycle continues until either all dependencies for the service have
been checked or until one dependency check fails.
'
Point 1 says that _before_ a dependent service is checked, the
__current__ state of the dependency is checked and the action taken as
specified in the dependency def.
Therefore it seems to me that this is allows the dependent service to
fail without Nag following the dependency spcification because the
dependent service has failed but has not been checked.
You could try and reduce or eliminate the impact of this by having the
rate of checks of the dependency greater than the dependent checks
(extra marks to relate the ratio of dependency to dependent checks to
the risk/probability of a false alarm).
If there is any doubt about the matter
1 enable service check debug and any depend debugging
2 run Nag with a test config that has the dependent service fail (eg
check_dummy false)
HTH,
Yours sincerely.
--
------------------------------------------------------------------------
Stanley Hopcroft
------------------------------------------------------------------------
'...No man is an island, entire of itself; every man is a piece of the
continent, a part of the main. If a clod be washed away by the sea,
Europe is the less, as well as if a promontory were, as well as if a
manor of thy friend's or of thine own were. Any man's death diminishes
me, because I am involved in mankind; and therefore never send to know
for whom the bell tolls; it tolls for thee...'
from Meditation 17, J Donne.
-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php
_______________________________________________
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