Перейти к основному содержанию

Zabbix 7 — настраиваем уведомления в Telegram

Telegram

Настраиваем уведомления из Zabbix 7.4 в Telegram. В разделе Alerts → Media types уже есть куча предустановленных вебхуков, в том числе и Telegram, осталось его только настроить.

zabbix

Нам понадобится создать бота для отправки сообщений. Бот может отправлять сообщения пользователям или в группу.

Создание бота в Telegram

Создадим бота, через которого Zabbix будет отправлять сообщения. Для управления ботами есть специальный бот @BotFather, добавляем его себе в контакты и пишем ему:

/start

telegram

Выводится справка по командам. Для создания бота пишем:

/newbot

Нам предлагают указать для бота name (имя), я пишу:

Zabbix internet-lab.ru

Нам предлагают указать для бота username (логин), он должен оканчиваться на "bot" или "Bot" я пишу:

zabbix_internet_lab_ru_bot

telegram

Бот создан, получаем токен "Use this token to access the HTTP API". Копируем его.

Настройка Telegram в Zabbix

Вставляем токен в Zabbix в разделе Alerts → Media types → Telegram →  Media type → api_token.

zabbix

Указываем api_parse_mode — может быть "markdown", "html" или "markdownv2".

Сохраняем изменения. Кстати, в описании также приводится краткая инструкция по настройке Telegram.

Включаем настроенный вебхук: enabled. 

Отправка уведомления в Telegram пользователю

Если вы хотите отправить личное сообщение пользователю, то в его профиле в разделе Notifications → Media нужно указать chat id пользователя из Telegram.

zabbix

Для получения chat id пользователю нужно в Telegram добавить бота @myidbot и отправить команду:

/getid

telegram

Ботам нельзя отправлять сообщения пользователям без их согласия. Нахожу созданного бота Zabbix internet-lab.ru и отправляю ему команду:

/start

Можно протестировать отправку сообщения в Telegram ссылкой "test".

zabbix

Проверяю.

zabbix

Media type test successful.

Сообщение пришло.

zabbix

Отправка уведомления в Telegram группе

Для отправки уведомления в группу нужно эту группу создать, добавить в неё созданного бота и отправить уведомление на id группы.

ПРИМЕЧАНИЕ: если вы сделаете группу "супергруппой", то у неё сменится идентификатор.

Создаю группу, добавляю в неё бота.

telegram

Для получения group id в Telegram добавляю бота @myidbot в группу и отправляю команду:

/getgroupid@myidbot

telegram

Получаем идентификатор группы, заметьте, что он отрицательный, не теряем минус.

Публичная группа может быть также задана в виде @MyGroupName.

Для отправки сообщения в определённый топик, нужно задать его через двоеточие: "<group_id>:<topic_id>". К примеру, : "-1001234567890:2", "@MyGroupName:2".

Заключение

Сообщения отправляются в Telegram. Теперь можно заниматься настройкой, шлифовкой, дизайном и прочими неинтересными вещами.

Теги

 

Похожие материалы