Ad Widget

Collapse

Приоритет media types

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Alexander Kuznetsov
    Junior Member
    • Jul 2020
    • 3

    #1

    Приоритет media types

    Привет!

    У меня в заббикс 4.4 настроено несколько media types: telegram и sms. Telegram через webhook, sms - скрипт, который подсоввывает в очередь сообщение на отправку через gsm модем. В своем профиле я настроил отправку уведомлений о событиях, сообщения приходят, всё хорошо.

    Проблема в том, что одно и то же событие приходит на все настроенные media types. И когда возникает ситуация, вызывающая срабатывание триггеров, то я получаю все сообщения в количестве кратном количеству настроенных media types. В общем, телефон со стола иногда съезжает.

    Я, может, плохо искал, но все же ответа не нашел: есть ли какая-нибудь возможность настроить отправку уведомлений о событиях таким образом, чтобы в первую очередь отправлялись события в telegram, и только если отправка сообщения завершилась ошибкой, то отправлять сообщение смс-кой?

    Конечно, есть возможность накостылить собственный диспетчер очереди, и отправлять всё своим скриптом, но вдруг есть вариант проще? Не верю, что я единственный, кто столкнулся с такой проблемой.

    В общем, буду благодарен за любые подсказки.
  • mykolq
    Junior Member
    • Jul 2020
    • 8

    #2
    Прям конкретно как вы описали без скриптинга нельзя. Но можно использовать шаги эскалации. На каждом шаге просто используйте нужный вам канал уведомлений. Интервал между шагами также настройте как вам удобно

    Comment

    • Alexander Kuznetsov
      Junior Member
      • Jul 2020
      • 3

      #3
      Благодарю за подсказку, но эскалация - это совсем не вариант.

      Приведу пример: при падении внешнего канала или отключении электропитания, мне нужно узнать о проблеме как можно раньше. При этом, внешних каналов у меня уже нет и отправить себе уведомление я могу только через смс. В этом случае webhook отвалится по ошибке через 5 секунд, поскольку не сможет достучаться до серверов телеграм, а эскалация сработает минимум через минуту. Да и если слать их с такой частотой, то смысла в этом нет никакого, я получу ту же самую проблему, только немного отложенную. Если же эскалацию делать со значительной задержкой, то... В большом городе электричество редко пропадает на продолжительное время. Скорее всего, я буду получать уже только события восстановления, что тоже плохой вариант.

      Comment

      • mykolq
        Junior Member
        • Jul 2020
        • 8

        #4
        Originally posted by Alexander Kuznetsov
        Благодарю за подсказку, но эскалация - это совсем не вариант.

        Приведу пример: при падении внешнего канала или отключении электропитания, мне нужно узнать о проблеме как можно раньше. При этом, внешних каналов у меня уже нет и отправить себе уведомление я могу только через смс. В этом случае webhook отвалится по ошибке через 5 секунд, поскольку не сможет достучаться до серверов телеграм, а эскалация сработает минимум через минуту. Да и если слать их с такой частотой, то смысла в этом нет никакого, я получу ту же самую проблему, только немного отложенную. Если же эскалацию делать со значительной задержкой, то... В большом городе электричество редко пропадает на продолжительное время. Скорее всего, я буду получать уже только события восстановления, что тоже плохой вариант.
        Пишите эту логику в своём скрипте уведомления

        Comment

        • wins
          Senior Member
          • Sep 2014
          • 307

          #5
          Проверяйте доступность серверов, куда вы вебхукаете. Если недоступны - отправляйте смс.
          Ну или договоритесь с друзьями, у кого есть мониторинг на другой площадке, на счет перекрестного мониторинга ресурсов друг друга.

          Comment

          • Alexander Kuznetsov
            Junior Member
            • Jul 2020
            • 3

            #6
            Originally posted by wins
            Проверяйте доступность серверов, куда вы вебхукаете. Если недоступны - отправляйте смс.
            Ну или договоритесь с друзьями, у кого есть мониторинг на другой площадке, на счет перекрестного мониторинга ресурсов друг друга.
            Благодарю за подсказку, но вопрос, всё же, был про как максимально сделать это штатными средствами. Потому что кроме логики непосредственно отправки уведомлений, в заббиксе, например, я могу отключить себе уведомления sms/telegram парой кликов прямо в личном кабинете, оставить только электронную почту и уехать в отпуск, а по возвращении вернуть всё обратно там же, в личном кабинете парой кликов.

            Но, похоже, заббикс этого совсем не умеет.

            Comment

            • wins
              Senior Member
              • Sep 2014
              • 307

              #7
              Вам не угодишь. Если уже так хочется - проверяйте статус коннектора (вебсервис, мыльный сервис, ит.д) каждый раз, когда обрабатывается триггер, в зависимости от этого проставляйте нужные теги. По тегам - формируте действие.
              Штатно, муторно, но вполне работоспособно.
              Либо вариант 2: поиграйтесь с условиями экшенов. Например: если триггер по недоступности коннектора отправки в состоянии PROBLEM - то в операциях прописываете только тип смс.

              Comment

              Working...