Additive inheritance and canceling inheritance issues

John Rouillard rouilj+nagiosdev at cs.umb.edu
Tue Oct 16 15:52:00 CEST 2007


In message <47144E09.7060509 at op5.se>,
Andreas Ericsson writes:
>Shad L. Lords wrote:
>>>> Following up on my previous message about additive inhereritance it 
>>>> appears
>>>> that it only applies to the first used instance.  Here is an example 
>>>> config
>>>> that fails.  There also appears to be an issue with canceling 
>>>> inheritance.
>>>>
>>> [ somewhat bizarre configuration axed out ]
>>>
>>>> Hope this helps track down some potential issues,
>>>>
>>> To be perfectly honest, I've always felt it overly complicates the nagios
>>> config
>>> parsing code to even allow templates to have templates. For really large
>>> networks, where they'd obviously be of most use, it's no great chore to 
>>> copy
>>> and paste one and then modify the variable that you want to alter.
>> 
>> If you have parameters set in a template then if you want to update them y
>ou 
>> only have one place to do it.  If you have 3k config files (or a 100k file
>) 
>> then you have thousands of places you have to modify.
>> 
>
>sed be thy friend ;-)

Well yes and no. I have seen a lot of variability in lists

 hostgroup_name a,!b,c

 hostgroup_name  a,c,!b

these can be the same lists of hosts, but expressed in two different
ways. Now you want to manipulate that list hundreds or thousands of
times over. I can sed it, I won't give you odds on my getting the
config right afterwards.

>>> I'm not sure how many people use this feature in an inheritance
>>> chain like you do, and as I personally don't really see the use
>>> for it, I'd rather spend my time on other things.

I would love to use it personally.

>> If they can be fixed our config would benefit from it quite a bit.
>> It would cut down the amount of manual tweaking necessary to get
>> things to work right.

Same reason.

Using multiple templates allows me to do something like:

  use standard_passive_service
  use without_passive_event_correlation
  use with_no_notification
  ....

to define the basic parameters for my service. It also makes it a lot
more obvious what I am trying to do. I could create one template:

  use standard_passive_service-without_passive_event_correlation-with_no_notifcation

(umm assuming I didn't exceed some limit for template names 8-)) but
it is lot more readable (and maintainable) if I can stack the
templates.

				-- rouilj
John Rouillard
===========================================================================
My employers don't acknowledge my existence much less my opinions.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/




More information about the Developers mailing list