[Nagios-devel] Why distinguish hosts from services?
Posted: Wed Aug 06, 2008 4:17 am
Nagios implements a basic design decision I never quite understood: the
distinction between hosts and services. This distinction seems to add
quite a lot of complexity, such as duplicated code, four different types
of dependencies (parents, host dependencies, service dependencies, and
the implicit service->host dependencies), and so on. I don't really see
the gain over simply dealing with arbitrary "objects" and dependencies
between them, which would reduce complexity and provide more flexibility
(such as the possibility to let some service depend on a host it's not
running on, or the other way round).
Note that I don't doubt the usefulness of syntactic configuration sugar,
such as the implicit service->host dependencies or the nice and simple
way of mapping the network topology using the "parents" directive. The
thing I don't really understand is why Nagios distinguishes hosts from
services internally (outside the configuration parser). However, I may
well be overlooking something, so I figured I'd ask what it is
In any case, giving up such basic distinction would of course require
dramatic changes to Nagios' core, I'm not seriously suggesting to do
something like that anytime soon (so this posting probably isn't very
constructive, sorry). I'm just asking out of curiosity.
Holger
PS: On nagios-users@, there was a feature request for some option to
derive the state of some host from the state of some service, which
I have no strong opinion on, but which provoked me to finally ask
this question here
See:
http://thread.gmane.org/gmane.network.nagios.user/56068
This post was automatically imported from historical nagios-devel mailing list archives
Original poster: [email protected]
distinction between hosts and services. This distinction seems to add
quite a lot of complexity, such as duplicated code, four different types
of dependencies (parents, host dependencies, service dependencies, and
the implicit service->host dependencies), and so on. I don't really see
the gain over simply dealing with arbitrary "objects" and dependencies
between them, which would reduce complexity and provide more flexibility
(such as the possibility to let some service depend on a host it's not
running on, or the other way round).
Note that I don't doubt the usefulness of syntactic configuration sugar,
such as the implicit service->host dependencies or the nice and simple
way of mapping the network topology using the "parents" directive. The
thing I don't really understand is why Nagios distinguishes hosts from
services internally (outside the configuration parser). However, I may
well be overlooking something, so I figured I'd ask what it is
In any case, giving up such basic distinction would of course require
dramatic changes to Nagios' core, I'm not seriously suggesting to do
something like that anytime soon (so this posting probably isn't very
constructive, sorry). I'm just asking out of curiosity.
Holger
PS: On nagios-users@, there was a feature request for some option to
derive the state of some host from the state of some service, which
I have no strong opinion on, but which provoked me to finally ask
this question here
http://thread.gmane.org/gmane.network.nagios.user/56068
This post was automatically imported from historical nagios-devel mailing list archives
Original poster: [email protected]