Ad Widget

Collapse

Вопрос про тригеры и Dashboard

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • AHTOXA
    Junior Member
    • Jul 2015
    • 7

    #1

    Вопрос про тригеры и Dashboard

    Здрасти все. Подскажите или я туплю или у меня что то произошло.
    Был Zabbix версии 2.2.3 решил я его обновить до последней 2.4.5. Обновил, данные получает графики рисует, триггеры срабатывают, но беда в том что на Dashboard когда смотришь...сработал триггер повисла проблема где то минут 5 и триггер перешел в статус OK.
    До обновления вроде триггер висел с статусом PROBLEM до того как реально хост не поднимался. Или я ошибаюсь и так и должно быть?
  • zmdpc
    Senior Member
    • Oct 2014
    • 484

    #2
    Такого эффекта нет. Должен висеть пока не прийдет в состояние ок.
    Возможно, чтото с настройками триггеров ?
    Приведите пример

    Comment

    • AHTOXA
      Junior Member
      • Jul 2015
      • 7

      #3
      Originally posted by zmdpc
      Такого эффекта нет. Должен висеть пока не прийдет в состояние ок.
      Возможно, чтото с настройками триггеров ?
      Приведите пример
      Повторюсь заметил что он переходит в состояние OK после обновления.
      У меня созданы шаблоны для DLINK 3200, 3526, 3528 в них снимаю данные OperStatus по snmp для этого триггера. самом триггере вбито выражение {Template_DLINK_3200_3528:ifOperStatus.25.delta(#2 )}<>0

      Comment

      • zmdpc
        Senior Member
        • Oct 2014
        • 484

        #4
        Originally posted by AHTOXA
        Повторюсь заметил что он переходит в состояние OK после обновления.
        У меня созданы шаблоны для DLINK 3200, 3526, 3528 в них снимаю данные OperStatus по snmp для этого триггера. самом триггере вбито выражение {Template_DLINK_3200_3528:ifOperStatus.25.delta(#2 )}<>0

        Тут смотрели ? https://www.zabbix.com/documentation...gers/functions

        Не совсем понял зачем использовать дельту? Какой смысл ?
        Возвращает разницы между максимальным и минимальным значениями за период ('max()' минус'min()'). Период задается первым параметром в секундах или количеством значений (после символа # решетки).

        может имеет смысл так исправить триггер?
        {Template_DLINK_3200_3528:ifOperStatus.25.avg(#2)} =2
        Last edited by zmdpc; 01-07-2015, 16:19.

        Comment

        • AHTOXA
          Junior Member
          • Jul 2015
          • 7

          #5
          Originally posted by zmdpc
          Тут смотрели ? https://www.zabbix.com/documentation...gers/functions

          Не совсем понял зачем использовать дельту? Какой смысл ?
          Возвращает разницы между максимальным и минимальным значениями за период ('max()' минус'min()'). Период задается первым параметром в секундах или количеством значений (после символа # решетки).

          может имеет смысл так исправить триггер?
          {template_dlink_3200_3528:ifoperstatus.25.avg(#2)} =2
          Шаблон был взят из интернета два года назад, били поменяны только oid потому что не работали некоторые графики. И добавлено несколько своих.
          Триггер выхватывает падение порта и шлет сообщение, с этим выражением он это прекрасно делал. Ща ради интереса проверю, будет ли он работать с тем что вы написали.

          Comment

          • AHTOXA
            Junior Member
            • Jul 2015
            • 7

            #6
            Originally posted by zmdpc
            Тут смотрели ? https://www.zabbix.com/documentation...gers/functions

            Не совсем понял зачем использовать дельту? Какой смысл ?
            Возвращает разницы между максимальным и минимальным значениями за период ('max()' минус'min()'). Период задается первым параметром в секундах или количеством значений (после символа # решетки).

            может имеет смысл так исправить триггер?
            {Template_DLINK_3200_3528:ifOperStatus.25.avg(#2)} =2
            Нет это немного работает не так как нужно, да и вообще перебрал много функций и либо работает так же исчезая через 300 сек. при обновление, либо тупо висит, сейчас объясню.

            Есть порт на свиче где линк или UP или DOWN эти вещи соответствуют значениям 1 и 2. Так вот вопрос как заставить систему срабатывать только на те порты которые меняют свой статус и не реагировать на порты которые всегда были DOWN(2).

            По выше приведенным документам мне подойдет и avg(#2)=2 и last(#1)=2 это заставляет срабатывать триггер. И по идеи если дописать к этому diff()=1, то должно получится что мне нужно, но увы после 300 сек триггер переходит в OK.

            Полное выражение что я пробовал
            {Template_DLINK_3200_3528:ifOperStatus.28.last(#1) } =2 and {Template_DLINK_3200_3528:ifOperStatus.26.diff()}= 1
            Пробовал менять местами их между собой...
            Помогите осилить, очень прошу(

            Comment

            • rough-84
              Senior Member
              • Oct 2014
              • 198

              #7
              Если я правильно понял задачу, то я бы сделал так
              {Template_DLINK_3200_3528:ifOperStatus.28.min(#5) } >1 and {Template_DLINK_3200_3528:ifOperStatus.28.abschang e(#5)}<>0
              Может где то в написании накосячил, но суть:
              Типа сработать, если последние 5 значений больше 1, с учетом того, что абсолютное значение в последних 5 полученных данным менялось. Значением abschange(#5) мы можем выставить не 5 последних, а скажем 1 день, тогда триггер провесит 1 день при условии что порт в down, потом исчезнет, и исключит срабатывание триггеров которые уже давным давно в состоянии down.

              Comment

              • AHTOXA
                Junior Member
                • Jul 2015
                • 7

                #8
                Originally posted by rough-84
                Если я правильно понял задачу, то я бы сделал так
                {template_dlink_3200_3528:ifoperstatus.28.min(#5) } >1 and {template_dlink_3200_3528:ifoperstatus.28.abschang e(#5)}<>0
                Может где то в написании накосячил, но суть:
                Типа сработать, если последние 5 значений больше 1, с учетом того, что абсолютное значение в последних 5 полученных данным менялось. Значением abschange(#5) мы можем выставить не 5 последних, а скажем 1 день, тогда триггер провесит 1 день при условии что порт в down, потом исчезнет, и исключит срабатывание триггеров которые уже давным давно в состоянии down.
                Сейчас попробуем.

                Comment

                • AHTOXA
                  Junior Member
                  • Jul 2015
                  • 7

                  #9
                  Originally posted by rough-84
                  Если я правильно понял задачу, то я бы сделал так
                  {template_dlink_3200_3528:ifoperstatus.28.min(#5) } >1 and {template_dlink_3200_3528:ifoperstatus.28.abschang e(#5)}<>0
                  Может где то в написании накосячил, но суть:
                  Типа сработать, если последние 5 значений больше 1, с учетом того, что абсолютное значение в последних 5 полученных данным менялось. Значением abschange(#5) мы можем выставить не 5 последних, а скажем 1 день, тогда триггер провесит 1 день при условии что порт в down, потом исчезнет, и исключит срабатывание триггеров которые уже давным давно в состоянии down.
                  Неа не работает так. Еще какие варианты)? Мне уже смешно просто. Как только добавляем к первому выражению второе, сразу сообщение через 5 минут исчезает(

                  Comment

                  • rough-84
                    Senior Member
                    • Oct 2014
                    • 198

                    #10
                    Originally posted by AHTOXA
                    Неа не работает так. Еще какие варианты)? Мне уже смешно просто. Как только добавляем к первому выражению второе, сразу сообщение через 5 минут исчезает(
                    Конечно исчезает
                    abschange(#5)<>0 означает что у триггер сработает как только абсолютное значение изменится в последних 5 полученных данных. Если проверки у вас раз в минуту после перехода из UP в Down пройдёт 5 минут и сработавший триггер исчезнет.
                    Я просто не понимаю что вы хотите сделать, вы хотите иметь триггер на Down и при этом не хотите чтобы были активны триггеры на портах которые давно не активны, так выставьте abschange() такой, на сколько вы хотите чтобы триггер был активен.
                    Делайте abschange(86400)<>0 и триггер будет висеть сутки.

                    Comment

                    • AHTOXA
                      Junior Member
                      • Jul 2015
                      • 7

                      #11
                      Originally posted by rough-84
                      Конечно исчезает
                      abschange(#5)<>0 означает что у триггер сработает как только абсолютное значение изменится в последних 5 полученных данных. Если проверки у вас раз в минуту после перехода из UP в Down пройдёт 5 минут и сработавший триггер исчезнет.
                      Я просто не понимаю что вы хотите сделать, вы хотите иметь триггер на Down и при этом не хотите чтобы были активны триггеры на портах которые давно не активны, так выставьте abschange() такой, на сколько вы хотите чтобы триггер был активен.
                      Делайте abschange(86400)<>0 и триггер будет висеть сутки.
                      я 7d ставил... толку 0
                      а и проверка каждые 5 минут

                      Comment

                      Working...