Re: [icinga-users] confusing documentation for 'assign/ignore where' expressions

2017-08-07 Thread Tobias Koeck
Hi Michael,

thank's for the information. I'll keep the Github link in mind and if I
find something better I'll contribute.

Greetings
Tobias

On Mon, Aug 7, 2017 at 10:53 AM, Michael Friedrich <
michael.friedr...@icinga.com> wrote:

>
> > On 5. Aug 2017, at 23:53, Tobias Köck  wrote:
> >
> > Thanks for the information. I will evaluate it.
> >
> > Despite that it should be IMHO more descriptive in the documentation.
>
> Once you’ve evaluated it and found a yet better example, please share a
> patch on GitHub :)
>
> https://github.com/Icinga/icinga2/blob/master/CONTRIBUTING.md
>
> Thanks,
> Michael
>
>
> >
> > On 05.08.2017 16:58, Antony Stone wrote:
> >> On Saturday 05 August 2017 at 14:44:36, Tobias Köck wrote:
> >>
> >>> Hi,
> >>>
> >>> on the page
> >>>
> >>> https://www.icinga.com/docs/icinga2/latest/doc/03-
> monitoring-basics/#apply-
> >>> rules
> >>>
> >>> there are several confusing examples
> >>>
> >>> E.g
> >>>
> >>> template Notification "cust-xy-notification" {
> >>>  users = [ "noc-xy", "mgmt-xy" ]
> >>>  command = "mail-service-notification"
> >>> }
> >>>
> >>> apply Notification "notify-cust-xy-mysql" to Service {
> >>>  import "cust-xy-notification"
> >>>
> >>>  assign where match("*has gold support 24x7*", service.notes) &&
> >>> (host.vars.customer == "customer-xy" || host.vars.always_notify ==
> true)
> >>>  ignore where match("*internal", host.name) || (service.vars.priority
> <
> >>> 2 && host.vars.is_clustered == true)
> >>> }
> >>>
> >>> Somewhere else it is written that several assign/ignore where rules are
> >>> combined with an || operator but I am especially wondering how it is
> >>> evaluated?
> >>
> >> Several assigns are combined with ||
> >>
> >> Several ignores are combined with ||
> >>
> >> That doesn't mean that an assign and an ignore are combined with ||
> >>
> >>> If the first and second line is automatically combined with with || it
> >>> should only match the first line. If it isn't matching the first assign
> >>> where it shouldn't match anything else anyway?
> >>>
> >>> So I don't understand why the second line (with the ignore where
> >>> expression) is defined? If it is true that it is combined with || it
> >>> wouldn't be added to the service anyway because there is no other
> assign
> >>> where expression?
> >>
> >> Suppose you have a machine whose service.notes include "has gold
> support 24x7"
> >> and belongs to "customer-xy", but the hostname ends in "internal".
> >>
> >> Then the "assign where" will match, but the ignore will match as well,
> and my
> >> understanding is that the ignore will take priority, so there will be no
> >> notifications for internal machines.
> >>
> >>
> >> Antony.
> >>
> >
> > ___
> > icinga-users mailing list
> > icinga-users@lists.icinga.org
> > https://lists.icinga.org/mailman/listinfo/icinga-users
>
> ___
> icinga-users mailing list
> icinga-users@lists.icinga.org
> https://lists.icinga.org/mailman/listinfo/icinga-users
>
___
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users


Re: [icinga-users] confusing documentation for 'assign/ignore where' expressions

2017-08-07 Thread Michael Friedrich

> On 5. Aug 2017, at 23:53, Tobias Köck  wrote:
> 
> Thanks for the information. I will evaluate it.
> 
> Despite that it should be IMHO more descriptive in the documentation.

Once you’ve evaluated it and found a yet better example, please share a patch 
on GitHub :)

https://github.com/Icinga/icinga2/blob/master/CONTRIBUTING.md

Thanks,
Michael


> 
> On 05.08.2017 16:58, Antony Stone wrote:
>> On Saturday 05 August 2017 at 14:44:36, Tobias Köck wrote:
>> 
>>> Hi,
>>> 
>>> on the page
>>> 
>>> https://www.icinga.com/docs/icinga2/latest/doc/03-monitoring-basics/#apply-
>>> rules
>>> 
>>> there are several confusing examples
>>> 
>>> E.g
>>> 
>>> template Notification "cust-xy-notification" {
>>>  users = [ "noc-xy", "mgmt-xy" ]
>>>  command = "mail-service-notification"
>>> }
>>> 
>>> apply Notification "notify-cust-xy-mysql" to Service {
>>>  import "cust-xy-notification"
>>> 
>>>  assign where match("*has gold support 24x7*", service.notes) &&
>>> (host.vars.customer == "customer-xy" || host.vars.always_notify == true)
>>>  ignore where match("*internal", host.name) || (service.vars.priority <
>>> 2 && host.vars.is_clustered == true)
>>> }
>>> 
>>> Somewhere else it is written that several assign/ignore where rules are
>>> combined with an || operator but I am especially wondering how it is
>>> evaluated?
>> 
>> Several assigns are combined with ||
>> 
>> Several ignores are combined with ||
>> 
>> That doesn't mean that an assign and an ignore are combined with ||
>> 
>>> If the first and second line is automatically combined with with || it
>>> should only match the first line. If it isn't matching the first assign
>>> where it shouldn't match anything else anyway?
>>> 
>>> So I don't understand why the second line (with the ignore where
>>> expression) is defined? If it is true that it is combined with || it
>>> wouldn't be added to the service anyway because there is no other assign
>>> where expression?
>> 
>> Suppose you have a machine whose service.notes include "has gold support 
>> 24x7" 
>> and belongs to "customer-xy", but the hostname ends in "internal".
>> 
>> Then the "assign where" will match, but the ignore will match as well, and 
>> my 
>> understanding is that the ignore will take priority, so there will be no 
>> notifications for internal machines.
>> 
>> 
>> Antony.
>> 
> 
> ___
> icinga-users mailing list
> icinga-users@lists.icinga.org
> https://lists.icinga.org/mailman/listinfo/icinga-users

___
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users


Re: [icinga-users] confusing documentation for 'assign/ignore where' expressions

2017-08-05 Thread Tobias Köck
Thanks for the information. I will evaluate it.

Despite that it should be IMHO more descriptive in the documentation.

On 05.08.2017 16:58, Antony Stone wrote:
> On Saturday 05 August 2017 at 14:44:36, Tobias Köck wrote:
> 
>> Hi,
>>
>> on the page
>>
>> https://www.icinga.com/docs/icinga2/latest/doc/03-monitoring-basics/#apply-
>> rules
>>
>> there are several confusing examples
>>
>> E.g
>>
>> template Notification "cust-xy-notification" {
>>   users = [ "noc-xy", "mgmt-xy" ]
>>   command = "mail-service-notification"
>> }
>>
>> apply Notification "notify-cust-xy-mysql" to Service {
>>   import "cust-xy-notification"
>>
>>   assign where match("*has gold support 24x7*", service.notes) &&
>> (host.vars.customer == "customer-xy" || host.vars.always_notify == true)
>>   ignore where match("*internal", host.name) || (service.vars.priority <
>> 2 && host.vars.is_clustered == true)
>> }
>>
>> Somewhere else it is written that several assign/ignore where rules are
>> combined with an || operator but I am especially wondering how it is
>> evaluated?
> 
> Several assigns are combined with ||
> 
> Several ignores are combined with ||
> 
> That doesn't mean that an assign and an ignore are combined with ||
> 
>> If the first and second line is automatically combined with with || it
>> should only match the first line. If it isn't matching the first assign
>> where it shouldn't match anything else anyway?
>>
>> So I don't understand why the second line (with the ignore where
>> expression) is defined? If it is true that it is combined with || it
>> wouldn't be added to the service anyway because there is no other assign
>> where expression?
> 
> Suppose you have a machine whose service.notes include "has gold support 
> 24x7" 
> and belongs to "customer-xy", but the hostname ends in "internal".
> 
> Then the "assign where" will match, but the ignore will match as well, and my 
> understanding is that the ignore will take priority, so there will be no 
> notifications for internal machines.
> 
> 
> Antony.
> 



signature.asc
Description: OpenPGP digital signature
___
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users


Re: [icinga-users] confusing documentation for 'assign/ignore where' expressions

2017-08-05 Thread Antony Stone
On Saturday 05 August 2017 at 14:44:36, Tobias Köck wrote:

> Hi,
> 
> on the page
> 
> https://www.icinga.com/docs/icinga2/latest/doc/03-monitoring-basics/#apply-
> rules
> 
> there are several confusing examples
> 
> E.g
> 
> template Notification "cust-xy-notification" {
>   users = [ "noc-xy", "mgmt-xy" ]
>   command = "mail-service-notification"
> }
> 
> apply Notification "notify-cust-xy-mysql" to Service {
>   import "cust-xy-notification"
> 
>   assign where match("*has gold support 24x7*", service.notes) &&
> (host.vars.customer == "customer-xy" || host.vars.always_notify == true)
>   ignore where match("*internal", host.name) || (service.vars.priority <
> 2 && host.vars.is_clustered == true)
> }
> 
> Somewhere else it is written that several assign/ignore where rules are
> combined with an || operator but I am especially wondering how it is
> evaluated?

Several assigns are combined with ||

Several ignores are combined with ||

That doesn't mean that an assign and an ignore are combined with ||

> If the first and second line is automatically combined with with || it
> should only match the first line. If it isn't matching the first assign
> where it shouldn't match anything else anyway?
> 
> So I don't understand why the second line (with the ignore where
> expression) is defined? If it is true that it is combined with || it
> wouldn't be added to the service anyway because there is no other assign
> where expression?

Suppose you have a machine whose service.notes include "has gold support 24x7" 
and belongs to "customer-xy", but the hostname ends in "internal".

Then the "assign where" will match, but the ignore will match as well, and my 
understanding is that the ignore will take priority, so there will be no 
notifications for internal machines.


Antony.

-- 
I want to build a machine that will be proud of me.

 - Danny Hillis, creator of The Connection Machine

   Please reply to the list;
 please *don't* CC me.
___
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users