Ad Widget

Collapse

Спамит триггер

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • prostrelov
    Senior Member
    • May 2012
    • 115

    #1

    Спамит триггер

    День добрый.
    Подскажите пожалуйста каким лучше триггером перекрыть следующую задачу:
    Есть карта хостов к которым применён примитивный шаблон:
    Code:
    HOSTS_Template:
     Item: g.icmpp
     Key: icmpping
     Triggers: {VKC.Hosts:icmpping.last(0,300)}=0
    единственная задача данного триггера - подсвечивать недоступные хосты на карте.

    Но есть проблема: при такой проверке и 10-20 недоступных хостах
    сильно засоряется экран events и dashboard. Хотелось бы как-то привести срабатывание тригера к минимуму.

    Я пробовал такой триггер: {VKC.Hosts:icmpping.last(0,300)}=0&{VKC.Hosts:icmp ping.change(0)}#0
    но видимо не правильно понял логику .change т.к. все хосты при таком
    тригере были в состоянии UP.
  • Heilig
    Senior Member
    Zabbix Certified Trainer
    Zabbix Certified SpecialistZabbix Certified Professional
    • Mar 2013
    • 366

    #2
    Вариантов много. Для начала попробуйте триггер из примера в документации, если проблема не исчезнет, можно использовать другие функции или добавить дополнительные проверки в триггер.

    З.Ы.: используя поиск по форуму или читая документацию, Вы бы нашли ответ намного быстрее.
    Last edited by Heilig; 07-05-2013, 18:31.

    Comment

    • prostrelov
      Senior Member
      • May 2012
      • 115

      #3
      Эту страницу документации я перечитываю каждый день, надеясь что
      в новом прочтении я всё таки найду ответ. Пока не получается )
      Вчера пробовал след триггер:
      {VKC.Hosts:icmpping.count(600,0)}>3
      но получилась просто альтернатива функции .last с временным интервалом.
      То-есть один раз войдя в режим TROUBLE zabbix продолжает с определённым
      интервалом проигрывать звуковое сообщение и выводить всплывающее окно с триггером.
      При этом значение Profile\Messaging>PlaySound:Once.

      Пробовал реализовать триггер через "Гистерезис":
      Code:
      ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(600,0)}>3)|
      ({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max(#3)}#0)
      В надежде что триггер один раз уйдёт в состояние PROBLEM и
      больше не будет спамить всплывающими окнами, но тригер не
      применяется из-за ошибки:
      Incorrect trigger expression.
      Check expression part starting from "({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max(#3)}#0 )".
      Last edited by prostrelov; 08-05-2013, 11:56.

      Comment

      • Jimson
        Senior Member
        • Jan 2008
        • 1327

        #4
        Там есть у триггеров "галка" про множественную генерацию проблемы, не она случаем у вас включена?

        Comment

        • prostrelov
          Senior Member
          • May 2012
          • 115

          #5
          Multiple PROBLEM events generation: выключена

          Comment

          • Jimson
            Senior Member
            • Jan 2008
            • 1327

            #6
            странно все очень и непонятно

            вот вы пишите что пробовали триггер
            ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(600,0 )}>3)|
            ({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max(#3)}#0)
            и при этом получили ошибку
            Incorrect trigger expression.
            Check expression part starting from "| ({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.last(0)}>0) ".

            очевидно же что ошибка из другой оперы, в триггере что вы привели нет функции last()

            у вас или какая то путаница в конфигурации, из-за которой идут левые значения по этимам хоста, либо какие то волшебные глюки с самим забиксом

            Comment

            • prostrelov
              Senior Member
              • May 2012
              • 115

              #7
              извините пожалуйста, это опечатка. исправил исходное сообщение.

              Comment

              • Jimson
                Senior Member
                • Jan 2008
                • 1327

                #8
                Ну а смысл сообщение отладки писать руками и еще что то править?
                Я не вижу ошибки в набранном вами выражении, но раз в отладке "Incorrect trigger expression." значит в вашей конфигурации выражение отличается от того что вы привели на форуме. Cut&Paste чем не угодил?

                Comment

                • prostrelov
                  Senior Member
                  • May 2012
                  • 115

                  #9

                  Comment

                  • Heilig
                    Senior Member
                    Zabbix Certified Trainer
                    Zabbix Certified SpecialistZabbix Certified Professional
                    • Mar 2013
                    • 366

                    #10
                    Удалите ентер после символа "|".

                    Comment

                    • prostrelov
                      Senior Member
                      • May 2012
                      • 115

                      #11
                      кто бы мог подумать.
                      спасибо огромное. посмотрим как будет отрабатывать триггер.

                      Comment

                      • prostrelov
                        Senior Member
                        • May 2012
                        • 115

                        #12
                        Code:
                        ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(300,0 )}>1)|
                        ({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max(#3)}#0)
                        К сожалению триггер всё так же не перекрывает нужную задачу, все хосты продолжают показывать статус OK, хотя согласно этой части триггера ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(300,0 )}>1)
                        в случае если за 5 минут icmpping вернёт более 1го раза 0 тригер должен перейти в состояние PROBLEM.

                        А согласно этой части:|({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max( #3)}#0)
                        тригер должен перейти в состояние OK если последние 3 значения icmpping не равны 0.

                        Comment

                        • Jimson
                          Senior Member
                          • Jan 2008
                          • 1327

                          #13
                          Originally posted by prostrelov
                          А согласно этой части:|({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.max( #3)}#0)
                          тригер должен перейти в состояние OK если последние 3 значения icmpping не равны 0.
                          то что вы написали словами это min(#3)#0, а в триггере у вас написанно max(), разница очевидна

                          Comment

                          • prostrelov
                            Senior Member
                            • May 2012
                            • 115

                            #14
                            В результате пришёл к такому тригеру:
                            ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(600,0 )}>3&{VKC.Hosts:icmpping.min(#2)}=0)|({TRIGGER.VAL UE}=1&{VKC.Hosts:icmpping.min(#2)}#0)
                            Который по логике должен:
                            {TRIGGER.VALUE}=0 переходить в состояние PROBLEM
                            {VKC.Hosts:icmpping.count(600,0)}>3 - если за последние 10 мин icmpping возращял значение 0 больше 3х раз
                            {VKC.Hosts:icmpping.min(#2)}=0 - и если последние 2 значения равны 0

                            и

                            {TRIGGER.VALUE}=1 - должен переходить в состояние OK
                            {VKC.Hosts:icmpping.min(#2)}#0 - если последние 2 значения не равны 0.

                            Но в результате каждые две минуты триггер прыгает из состояния PROBLEM в OK и обратно.
                            Временной интервал опороса ключа = 120sec.
                            Не могу понять почему так происходит.

                            Comment

                            • prostrelov
                              Senior Member
                              • May 2012
                              • 115

                              #15
                              Проблема осталась.
                              Пробовали такой триггер:
                              ({TRIGGER.VALUE}=0&{VKC.Hosts:icmpping.count(600,0 )}>3)|
                              ({TRIGGER.VALUE}=1&{VKC.Hosts:icmpping.change(0)}= 1&{VKC.Hosts:icmpping.last(0)}=0)
                              по прошествии 2х минут host'ы переходят в состояние Problem и спустя
                              ещё 2 минуты возвращаются обратно в OK.

                              Comment

                              Working...