Telegram давно стал удобным каналом для оперативных уведомлений в инфраструктуре. В связке с Graylog он позволяет получать алерты практически в реальном времени без зависимости от email или сторонних систем.
В этой статье разберем, как установить и настроить Telegram Notification Plugin для Graylog: от создания бота в Telegram до получения первых уведомлений и оптимизации алертинга.
Telegram Notification Plugin для Graylog
Telegram Notification — это плагин для Graylog, который позволяет отправлять уведомления о событиях (alerts) напрямую в чат Telegram.
Решение особенно полезно для системных администраторов и инженеров, которым важно оперативно получать сигналы о сбоях, инцидентах безопасности и других событиях инфраструктуры без зависимости от email.
Что делает плагин
Плагин интегрируется в механизм уведомлений Graylog и позволяет:
- отправлять события в Telegram в реальном времени
- использовать кастомные шаблоны сообщений
- работать с личными чатами, группами и каналами
- быстро внедрить уведомления без внешних сервисов
Это минималистичное и эффективное решение для алертинга.
Требования
Для корректной работы необходимо:
- Graylog версии 3.1 или выше
- доступ к серверу Graylog для установки плагина
- доступ к Telegram
Рекомендуется использовать актуальную версию Graylog, так как API уведомлений периодически меняется.
Установка плагина
- Скачайте последнюю версию плагина с GitHub (файл вида
graylog-plugin-telegram-notification-x.x.x.jar) - Поместите файл в директорию плагинов, указанную в конфигурации
graylog.conf: plugin_dir = /path/to/plugins
- Перезапустите сервис Graylog: systemctl restart graylog-server
- После перезапуска плагин станет доступен в интерфейсе уведомлений
Настройка Telegram
Создание бота
- Откройте Telegram
- Найдите BotFather
- Выполните команды:
/start
/newbot
- Сохраните полученный Bot Token
Получение Chat ID
Есть несколько способов:
- через специальные боты (например get_id)
- через Telegram API
- через Message Tool
Поддерживаются:
- личные чаты
- группы
- каналы
Важно учитывать:
- для каналов Chat ID обычно начинается с
-100 - бот должен быть добавлен в чат
- для каналов — обязательно назначить бота администратором
Настройка уведомления в Graylog
- Перейдите: Alerts → Notifications
- Создайте новое уведомление
- Выберите тип: Telegram Notification
- Укажите:
- Bot Token
- Chat ID
- шаблон сообщения

Пример шаблона сообщения
Alert: ${event_definition_title}
Источник: ${source}
Сообщение: ${message}
Уровень: ${event_priority}
Время: ${event_timestamp}Получится что-то вроде такого:
Можно использовать любые переменные, доступные в системе событий Graylog.
Обновление плагина
Процесс обновления стандартный:
- Удалить старую версию
.jar - Скопировать новую
- Перезапустить Graylog
systemctl restart graylog-server
Иногда требуется пересоздать уведомления, если изменилась структура параметров.
Практические рекомендации
Если внедрять это в реальную инфраструктуру, стоит учитывать:
Разделение потоков уведомлений
Не отправляйте всё в один чат. Разделите:
- критические события (critical)
- предупреждения (warning)
- служебные уведомления
Иначе Telegram быстро превратится в нечитабельный поток.
Фильтрация событий
Настраивайте alert-условия в Graylog максимально точно. Telegram — это не SIEM, туда должны попадать только важные события.
Форматирование сообщений
Добавляйте в шаблон:
- hostname
- IP
- severity
- короткое описание
Чем меньше «воды», тем быстрее реакция.
Резервирование каналов
Для критичных систем используйте:
- Telegram + email
- Telegram + Slack
Telegram удобен, но не должен быть единственным каналом оповещения.
Безопасность
Bot Token — это фактически пароль:
- не храните его в открытых репозиториях
- ограничьте доступ к конфигурациям
- при утечке — сразу перевыпускайте
Типичные проблемы и диагностика
Уведомления не приходят
Проверить:
- правильность Bot Token
- корректность Chat ID
- добавлен ли бот в чат
Ошибка 403
Причина:
- бот не имеет прав отправки сообщений
Решение:
- добавить в группу
- назначить администратором (для каналов)
Alert не срабатывает
Проверить:
- Event Definition
- Conditions
- наличие входящих логов
FAQ
Можно ли использовать несколько Telegram чатов
Да. Для этого создаются отдельные Notification-объекты в Graylog.
Поддерживается ли форматирование сообщений
Да. Можно использовать переменные и базовую разметку Telegram (Markdown/HTML — зависит от реализации плагина).
Работает ли с новыми версиями Graylog (4/5/6)
Не всегда. Нужно проверять совместимость конкретной версии плагина. Иногда требуется форк или обновлённый билд.
Можно ли отправлять разные типы событий в разные чаты
Да, через разные Event Definitions и Notifications.
Можно ли использовать одного бота для нескольких проектов
Да, но лучше разделять ботов по средам (prod/dev), чтобы избежать путаницы.
Что делать при высокой нагрузке
Telegram имеет rate limits. При большом количестве событий:
- уменьшайте количество алертов
- агрегируйте события
- используйте throttling в Graylog
Полезные ссылки
- Graylog — официальная документация
- Telegram Bot API
- BotFather — создание ботов
- GitHub репозиторий плагина (поиск: graylog telegram notification plugin)
Когда это реально нужно
Используйте Telegram-уведомления в Graylog если:
- нет полноценного мониторинга (Zabbix/Prometheus)
- нужна быстрая интеграция без инфраструктуры
- важна реакция в реальном времени
Не используйте как единственный канал — Telegram не гарантирует доставку.


