Home » Zabbix » Повторяющиеся уведомления в Zabbix

Повторяющиеся уведомления в Zabbix

Система мониторинга Zabbix в стандартной установке предлагает один тип оповещений на события — одноразовое уведомление при срабатывании триггера. Если ты по какой-то причине не заметил уведомление, или забыл на него среагировать, через некоторое время ситуация может стать критической. В таком случае могут быть полезны повторяющиеся напоминания о том, что проблема еще не исправлена.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужно пройти .

Введение

Тема повторных уведомлений хорошо освещена в официальной документации заббикс. В разделе про Эскалации рассказано, как управлять оповещениями, в том числе делать их повторными. Сам я без проблем разобрался на основе документации, но тем не менее для полноты картины настройки zabbix, подробно раскрою эту тему у себя на конкретном примере.

Если у вас еще нет своего сервера для мониторинга, то рекомендую материалы на эту тему. Для тех, кто предпочитает систему CentOS:

  1. Установка CentOS 7.
  2. Настройка CentOS 7.
  3. Установка и настройка zabbix сервера.

То же самое на Debian 10, если предпочитаете его:

  1. Установка Debian 10.
  2. Базовая настройка Debian.
  3. Установка и настройка zabbix на debian.

Дальнейшие действия я буду выполнять в системе CentOS 7 и версии Zabbix сервера 3.4.6. Все описанное ниже будет актуально и для других систем и версий заббикса, так как разработчики стараются максимально сохранять совместимость между версиями.

Подготовка тестового триггера

Я в своих статьях по настройке заббикса часто использую в качестве примера триггер, который срабатывает, когда залогиненных пользователей в системе становится больше 2-х. Он основывается на стандартном итеме шаблона Template OS Linux — Number of logged in users.

Подготовка тестового триггера

Триггер срабатывает, когда каждое из двух последних значения залогиненных в систему пользователей больше двух (count(#2,1,»gt»)}=2), выключается, когда последнее значение залогиненных пользователей меньше двух (last(#1)}<2). То есть, когда мы заходим двумя пользователями на сервер, через 2 минуты срабатывает триггер. Когда остается только один пользователь или вообще ни одного, через минуту триггер выключается.

Прежде чем двигаться дальше, рекомендую проверить работу триггера и оповещений и убедиться в том, что все работает правильно. Далее я настрою оповещения, которые будут повторяться каждую минуту до тех пор, пока залогиненных юзеров не станет меньше двух.

Настройка повторяющегося оповещения

После того, как убедились, что тестовый триггер работает, настроим для него повторяющееся уведомление. Для этого идем в раздел Настройка -> Действия и нажимаем Создать действие.

Создание нового действия

Во вкладке Действие указываете имя и добавляете тестовый триггер.

Условия срабатывания действия

Дальше переходим в раздел Операции и указываем длительность шага равное 1 минуте. Добавляем шаг с параметром 1 — 0 и указываем необходимое действие. В примере я просто буду отправлять всем администраторам оповещение на почту.

Настройка повторения оповещений

Сохраняйте настроенное действие и ждите срабатывания триггера. Вы должны получать оповещение на почту каждую минуту до тех пор, пока триггер не будет отключен. Обращаю внимание, что вы получите оповещение и от стандартного правила, которое шлет один раз и от нового, которое повторяющееся. Чтобы все было красиво и удобно, необходимо отключать стандартное оповещение и создавать свои с определенными правилами в зависимости от типа триггера.

Заключение

Не понравилась статья и хочешь научить меня администрировать? Пожалуйста, я люблю учиться. Комментарии в твоем распоряжении. Расскажи, как сделать правильно!

Ситуаций, где полезно использование повторяющихся уведомлений очень много. К примеру, у меня есть материал, где описан мониторинг делегирования домена или ssl сертификата. На такие события не требуется мгновенная реакция. Она может последовать и через несколько дней. Но когда откладываешь действие на несколько дней вперед, очень легко забыть о нем. Тут придут на помощь ежедневные напоминания о проблеме. Я их настроил вот так:

Уведомление о делегировании домена

Повторяющееся уведомление с интервалом в 1 день

Если вы настроили мониторинг бэкапов, который выполняется ночью, то его тоже не обязательно чинить в ту же минуту, можно отложить на вечернее время. Чтобы не забыть, можно настроить уведомления раз в 2 часа. И так далее. Смысл, я думаю, понятен.

Еще раз обращаю внимание на ссылку в самом начале на документацию заббикса. Там описаны более замысловатые, но тем не менее простые в настройке последовательности отправки уведомлений.

Онлайн курс по Linux

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:
  • Знание архитектуры Linux.
  • Освоение современных методов и инструментов анализа и обработки данных.
  • Умение подбирать конфигурацию под необходимые задачи, управлять процессами и обеспечивать безопасность системы.
  • Владение основными рабочими инструментами системного администратора.
  • Понимание особенностей развертывания, настройки и обслуживания сетей, построенных на базе Linux.
  • Способность быстро решать возникающие проблемы и обеспечивать стабильную и бесперебойную работу системы.
Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству.

4 комментария

  1. Аватар

    Добрый день! Не знаете ли как можно настроить уведомление об активных триггерах на определенное время, например на 07:00. Как утренняя сводка о не решенных проблемах.

    • Zerox

      Насколько я понимаю логику работы zabbix, сделать это штатно не получится. Я уже сам задумывался об этом, но ничего не получается. Можно как-то накостылить этот функционал, но работать будет так себе. Например, включать ночью режим обслуживания и отключать его утром. Тогда должны начать сыпаться уведомления с активных проблем. Но это немного не то. Так же можно сделать отдельный шаблон с проверками только в определенное время. Тогда оповещения будут приходить только в момент начала проверок. Но это немного не то.

      В явном виде, как вы хотите, получить сводку по активным триггерам в определенное время нельзя. Нужно это реализовывать либо каким-то скриптом, забирая данные из базы заббикса, либо через api.

      Если найдете или сделаете подобное решение, прошу поделиться. Мне оно видится полезным, в том числе и для себя. Простых реализаций не могу придумать.

  2. Аватар

    не подскажете — при создании триггера сценария веб мониторинга указывается его имя:
    например: сайт site.com недоступен, ошибка: {ITEM.VALUE}

    в итоге приходит письмо с заголовком и содержанием сайт site.com недоступен, ошибка: 1

    как сделать чтобы в письме писало ошибку котор выдал вебсервер — 403, 500, 502 и т.д.
    это Last error message of scenario «myscenario»

    то есть какую переменную прописать в имя триггера ? пробовал разные из https://www.zabbix.com/documentation/3.4/ru/manual/appendix/macros/supported_by_location — не помогло

    • Zerox

      Нужно делать отдельный триггер на код ответа. Тогда значение кода будет подставляться в уведомление. У вас триггер на один итем, который проверяет статус проверки (1 или 0), а вы хотите вставить результат из другого итема. Может так тоже можно как-то сделать, я не проверял. Но если сделать отдельный триггер для кода, то точно будет слать значение в уведомлении.

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.