Ad Widget

Collapse

выключение сработавших триггеров в Zabbix

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • alww
    Junior Member
    • Jun 2018
    • 6

    #1

    выключение сработавших триггеров в Zabbix

    Добрый день.

    Только изучаю Zabbix.

    Отслеживаю только станции Windows стандартным шаблоном Template OS Windows.

    1.
    Вижу что сработал триггер "Service АААА is not running (startup type automatic) "
    Сервис АААА - это остатки ранее работавшей программы , которая , судя по всему, была не совсем корректно удалена. Но сейчас мне этот сервис точно не нужен.
    Ок, удаляю полностью сервис АААА.
    Но триггер продолжает сигнализировать о проблеме с этим сервисом. Хотя его уже физически нет.
    Руками закрыть проблему я не могу , потому что поле "Close problem" недоступна.
    Иду в настройки триггера Configuration - Templates - Template OS Windows - Discovery rules - Windows service discovery- Trigger prototypes - Service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) - включаю опцию Allow manual close - сохраняю.
    Это изменение применяется ко всем триггерам , за исключением тех , которые активны и сигнализируют о проблеме. Т.е. в данном случае как раз кроме тех, которые мне и надо выключить.
    Подозреваю, что триггеру чтобы выключится нужно чтобы этот сервис был запущен. Но это невозможно, его уже физически нет.
    Иду еще раз в настройки триггера Configuration - Templates - Template OS Windows - Discovery rules - Windows service discovery- Trigger prototypes - Service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) и добавляю в поле Recovery Expression {Template OS Windows:service.info[{#SERVICE.NAME},state].min(#3)}=255. Т.е. я хочу сказать что проблема решена когда службы не существует.
    Но опять же эти изменения применяются для всех триггеров, кроме того, который мне нужен.
    Как вырубить этот триггер?
    Т.е. можно конечно его физически удалить , но это надо в каждую рабочую станцию заходить и удалять его руками
    Или например удалить шаблон с этого хоста с удалением всех данных , а затем заново его подключить... но наверно это не очень правильно, думаю что есть более лучшие и более простые практики решения таких проблем.

    2.
    Есть службы , у которых тип запуска "Автоматически", но постоянно они в системе не работают , запускаются через определенные периоды, а затем система их опять выключает.
    Например Service "wuauserv" (Центр обновления Windows) , эта служба на Windows server 2012 то запускается то выключается, и это для нее нормальный, штатный режим работы.
    Но Zabbix, отслеживая работу всех служб у которых тип запуска "автоматически", постоянно на каждое выключение шлет на email alert , а на каждое включение - "проблема решена"
    Как правильно сопровождать такие события?
    Чтобы и службы отслеживать оперативно и одновременно чтобы zabbix не мусорил на email постоянными сообщениями о мнимых проблемах?

  • kernbug
    Senior Member
    • Feb 2013
    • 330

    #2
    Здравствуйте,

    1. как часто у вас происходит обнаружение (lld)?
    2. вот так "если за сегодня служба работала хотя бы 1 раз, то хорошо, если нет - отправляем уведомление"?

    Comment

    • alww
      Junior Member
      • Jun 2018
      • 6

      #3
      Добрый день.

      1. Все согласно настройкам по умолчанию в стандартном шаблоне Template OS Windows - 1 час.
      Т.е. я иду в настройки триггера Configuration - Templates - Template OS Windows - Discovery rules - Windows service discovery- Trigger prototypes - Service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) и добавляю в поле Recovery Expression {Template OS Windows:service.info[{#SERVICE.NAME},state].min(#3)}=255. Т.е. я хочу сказать что проблема решена когда службы не существует.
      Далее жду около часа.
      Захожу в любой хост , открываю список триггеров. Вижу , что на триггерах , отслеживающих работу служб, появилось дополнительное условие. НО только не на триггере "Service АААА is not running (startup type automatic) " , который как раз мне и надо вырубить.
      Почему изменения применяются только на часть триггеров? Или для того чтобы изменения применялись необходимо чтобы триггер был в этот момент неактивен? Ну так у меня и задача в том и состоит чтобы выключить его.

      2. Если я изменю работу LLD триггера таким образом , то пострадает оперативность обнаружения проблем с другими службами. Или тут логика такова: по умолчанию настраиваем не оперативное обнаружение проблем через условие "1 раз в сутки - ок" , а если надо мониторить какие либо более критичные сервисы более оперативно - для них делаем отдельные триггеры индивидуально на каждом хосте?

      Comment

      • kernbug
        Senior Member
        • Feb 2013
        • 330

        #4
        Originally posted by alww
        Добрый день.

        1. Все согласно настройкам по умолчанию в стандартном шаблоне Template OS Windows - 1 час.
        Т.е. я иду в настройки триггера Configuration - Templates - Template OS Windows - Discovery rules - Windows service discovery- Trigger prototypes - Service "{#SERVICE.NAME}" ({#SERVICE.DISPLAYNAME}) is not running (startup type {#SERVICE.STARTUPNAME}) и добавляю в поле Recovery Expression {Template OS Windows:service.info[{#SERVICE.NAME},state].min(#3)}=255. Т.е. я хочу сказать что проблема решена когда службы не существует.
        Далее жду около часа.
        Захожу в любой хост , открываю список триггеров. Вижу , что на триггерах , отслеживающих работу служб, появилось дополнительное условие. НО только не на триггере "Service АААА is not running (startup type automatic) " , который как раз мне и надо вырубить.
        Почему изменения применяются только на часть триггеров? Или для того чтобы изменения применялись необходимо чтобы триггер был в этот момент неактивен? Ну так у меня и задача в том и состоит чтобы выключить его.

        2. Если я изменю работу LLD триггера таким образом , то пострадает оперативность обнаружения проблем с другими службами. Или тут логика такова: по умолчанию настраиваем не оперативное обнаружение проблем через условие "1 раз в сутки - ок" , а если надо мониторить какие либо более критичные сервисы более оперативно - для них делаем отдельные триггеры индивидуально на каждом хосте?
        Здравствуйте,

        1. У Вас элемент данных для этого триггера остался на хосте? Есть стандартный временной таймаут в настройках обнаружения, позволяющие определить за какое время считать обнаруженный элемент не актуальным.
        2. Стандартный шаблон не позволяет удовлетворить потребности всех пользователей Windows систем, только зная решаемые задачи можно создать идеальные шаблоны.

        Comment

        • alww
          Junior Member
          • Jun 2018
          • 6

          #5
          Добрый день.
          1. На хосте эта служба удалена, в списке служб этой службы нет.
          На zabbix сервере выбирают хост , нажимаю Items , вижу искомый элемент данных
          Windows service discovery: State of service "DNTUS26" (DameWare NT Utilities 2.6) Triggers 1 service.info[DNTUS26,state] 1m 1w 365d Zabbix agent Services, Startup automatic services Enabled
          Рядом восклицательный знак , при наведении на него
          The item is not discovered anymore and will be deleted in 27d 9h 45m (on 2018-07-26 at 22:33)

          Поставил keep lost resources period = 1h, элемент данных удалился , триггер на этот элемент данных соответственно так же .

          Спасибо.

          2. Поставил {Template OS Windows:service.info[{#SERVICE.NAME},state].min(3600)}<>0 , если я правильно понимаю , то это означает что если в течении одного часа служба не работает - тогда триггер сработает.
          Last edited by alww; 29-06-2018, 09:44.

          Comment

          • Ronnin
            Junior Member
            • Jun 2018
            • 9

            #6
            Originally posted by alww
            Добрый день.
            1. На хосте эта служба удалена, в списке служб этой службы нет.
            На zabbix сервере выбирают хост , нажимаю Items , вижу искомый элемент данных
            Windows service discovery: State of service "DNTUS26" (DameWare NT Utilities 2.6) Triggers 1 service.info[DNTUS26,state] 1m 1w 365d Zabbix agent Services, Startup automatic services Enabled
            Рядом восклицательный знак , при наведении на него
            The item is not discovered anymore and will be deleted in 27d 9h 45m (on 2018-07-26 at 22:33)

            Поставил keep lost resources period = 1h, элемент данных удалился , триггер на этот элемент данных соответственно так же .

            Спасибо.

            2. Поставил {Template OS Windows:service.info[{#SERVICE.NAME},state].min(3600)}<>0 , если я правильно понимаю , то это означает что если в течении одного часа служба не работает - тогда триггер сработает.

            Почитайте документацию https://www.zabbix.com/documentation/3.4/ru/manual/appendix/triggers/functions?s[]=min

            В вашем случаем используется <min> Минимальное значение за указанный период вычисления.
            Вам нужно использовать либо last, либо count.

            Comment

            • alww
              Junior Member
              • Jun 2018
              • 6

              #7
              Я читал документацию. Не понимаю , почему в данном случае нельзя использовать min.
              Допустим, служба перешла в любое состояние , отличное от рабочего. С этого момента данные по службе начнут накапливаться отличные от нуля и могут быть любые из
              1 - пауза,
              2 - ожидание старта,
              3 - ожидание паузы,
              4 - ожидание продолжения,
              5 - ожидание остановки,
              6 - остановлена,
              7 - неизвестно,
              255 - такой службы не существует
              Следовательно за 1 час при условии накопления таких данных минимальное значение накопленных данных будет в любом случае отлично от нуля и триггер сработает.

              И в обратную сторону : если служба через некоторое время, меньше чем 1 час, самостоятельно заработала , как например та же Центр обновления Windows в Windows Server 2012 , которая запускается периодически - то минимальное значение опять станет =0 и триггер не будет срабатывать при таких периодических отключениях службы.
              Last edited by alww; 29-06-2018, 12:00.

              Comment

              • Ronnin
                Junior Member
                • Jun 2018
                • 9

                #8
                Имел ввиду "лучше-правильнее" использовать.

                Но использовать вы можете любой из параметров "min", "max", "avg" и тд

                Comment

                Working...