You Lie, Nagios 3.0 documentation!!!
Posted: Mon Jul 01, 2013 3:21 pm
Not sure if this is the appropriate forum, but it seemed the best fit.
I'm going to try to avoid a long spiel, but I wanted to raise the issue of the quality of documentation available for Nagios Core. Specifically, I want to point out one important instance of the documentation being not merely incomplete, but actually misleading, in a way that may be turning users off to the product, or complicating their configurations enormously and unnecessarily.
Long story short: I had set up what seemed to be a logical series of hosts, services, and corresponding groups. All was fine and well, until I tried to customize my service escalations, with each machine hosting two sets of services that needed to notify different groups at differing intervals. I was referring to:
http://nagios.sourceforge.net/docs/3_0/ ... escalation
...as an exhaustive, authoritative source for information on making this happen. That was a mistake that eventually cost me several days of work, some embarrassing e-mail spamming, and multiple ugly configuration reversions. You see, the definition listed for serviceescalation objects is totally inaccurate and substantially misleading. The definition supplied clearly labels both 'host_name' and 'service_description' as required fields. In reality, neither of these is required so long as you specify the UNLISTED(!) servicegroup_name directive, as exampled here, from off in some far-hidden corner of the same documentation set:
http://nagios.sourceforge.net/docs/3_0/ ... ricks.html
...now of course, I could have gone out and defined service escalations uniquely for each of the n services on each of n servers, or some other horrible kludge, but that's what groups are for, right: maximizing configuration reusability. It sure would have been nice to know about the "Object Trick" of using a servicegroup_name in a serviceescalation object before I rewrote the configurations several times while pounding my head against a wall.
tl;dr - Nagios' documentation lied to me about the capabilities of serviceescalation objects, making me look the fool to those on the notification lists and forcing me to repeatedly restructure my configuration files in weird and unnecessary ways to work around a missing directive that isn't actually missing, just undocumented.
I'm going to try to avoid a long spiel, but I wanted to raise the issue of the quality of documentation available for Nagios Core. Specifically, I want to point out one important instance of the documentation being not merely incomplete, but actually misleading, in a way that may be turning users off to the product, or complicating their configurations enormously and unnecessarily.
Long story short: I had set up what seemed to be a logical series of hosts, services, and corresponding groups. All was fine and well, until I tried to customize my service escalations, with each machine hosting two sets of services that needed to notify different groups at differing intervals. I was referring to:
http://nagios.sourceforge.net/docs/3_0/ ... escalation
...as an exhaustive, authoritative source for information on making this happen. That was a mistake that eventually cost me several days of work, some embarrassing e-mail spamming, and multiple ugly configuration reversions. You see, the definition listed for serviceescalation objects is totally inaccurate and substantially misleading. The definition supplied clearly labels both 'host_name' and 'service_description' as required fields. In reality, neither of these is required so long as you specify the UNLISTED(!) servicegroup_name directive, as exampled here, from off in some far-hidden corner of the same documentation set:
http://nagios.sourceforge.net/docs/3_0/ ... ricks.html
...now of course, I could have gone out and defined service escalations uniquely for each of the n services on each of n servers, or some other horrible kludge, but that's what groups are for, right: maximizing configuration reusability. It sure would have been nice to know about the "Object Trick" of using a servicegroup_name in a serviceescalation object before I rewrote the configurations several times while pounding my head against a wall.
tl;dr - Nagios' documentation lied to me about the capabilities of serviceescalation objects, making me look the fool to those on the notification lists and forcing me to repeatedly restructure my configuration files in weird and unnecessary ways to work around a missing directive that isn't actually missing, just undocumented.