Зачем отправлять уведомления мониторинга в Slack
Если команда живёт в Slack, сбой должен появиться там же, где его будут обсуждать. Сообщение в общем канале видят разработчики, поддержка и менеджер продукта одновременно: кто-то берёт инцидент, остальные видят это в треде и не дублируют работу.
Скорость реакции определяется интервалом проверок: раз в минуту на платных тарифах и раз в 5 минут на бесплатном. Сообщение в Slack уходит сразу после проверки, которая зафиксировала сбой.
Как выглядит сообщение
PingDesk отправляет сообщение в формате Block Kit из трёх блоков. Заголовок — суть события на русском языке: значок важности, что случилось и с каким монитором, например «🔴 Недоступен: Интернет-магазин» или «✅ Снова работает: Интернет-магазин». Основной блок — детали проверки: адрес, код и время ответа, текст ошибки, срок действия сертификата или домена, время события по Москве и ссылка на монитор в PingDesk. Внизу — подпись «PingDesk · мониторинг сайтов».
Тот же заголовок передаётся и как текст уведомления, поэтому в push-уведомлении Slack на телефоне сразу видно, что произошло.
Разные каналы для разных событий
Каждый Incoming Webhook в Slack привязан к одному каналу. Чтобы разнести уведомления, создайте несколько вебхуков и подключите каждый как отдельный канал PingDesk — например, #alerts-prod для падений и #ops-renewals для SSL и доменов.
Затем в разделе «Правила уведомлений» создайте правило и в поле «Каналы» выберите нужный канал вместо «Все активные каналы». Правило можно ограничить областью — сайты, API-мониторы или Cron — и конкретным монитором.
- Падения продакшена — в канал дежурной смены.
- Ошибки API-проверок — в канал бэкенд-команды.
- Истечение SSL и домена — в канал администраторов.
Как не заспамить канал
Канал, в котором постоянно что-то мигает, быстро перестают читать. Стандартное правило «Сайт недоступен» шлёт сообщение сразу и повторяет его каждые 5 минут, пока сайт лежит; после восстановления повторы прекращаются, а приходит одно сообщение о восстановлении. Эти параметры легко изменить.
- «Задержка перед отправкой» — короткий сбой, после которого сайт сам поднялся, не попадёт в канал.
- «Повторять каждые» — интервал напоминаний; 0 отключает повторы.
- «Кулдаун сценария» — минимальный промежуток между одинаковыми событиями, от 60 секунд.
Безопасность вебхука
Webhook URL Slack — это фактически ключ: любой, кто его знает, может писать в ваш канал. PingDesk хранит адрес в зашифрованном виде (AES-256-GCM) и расшифровывает только при отправке. Если адрес утёк, удалите вебхук в настройках Slack App, создайте новый и обновите канал в PingDesk.
Частые вопросы
Нужно ли устанавливать бота PingDesk в Slack?
+
Нет. Достаточно Incoming Webhook в вашем Slack App: PingDesk отправляет сообщения на этот адрес и не получает доступа к переписке.
Можно ли подключить Slack на бесплатном тарифе?
+
Да. На бесплатном тарифе доступен один канал уведомлений, и им может быть Slack. На Starter каналов 5, на Pro — 10, на Agency — 50.
Можно ли отправлять уведомления в несколько каналов Slack?
+
Да. Создайте отдельный вебхук для каждого канала Slack и подключите их в PingDesk как отдельные каналы уведомлений.
Как быстро сообщение появится в Slack?
+
Сразу после проверки, которая зафиксировала сбой: раз в минуту на платных тарифах и раз в 5 минут на бесплатном. Если в правиле есть задержка перед отправкой, сообщение придёт после неё.
Придёт ли сообщение о восстановлении?
+
Да. Стандартное правило «Сайт восстановился» публикует одно сообщение, когда сайт снова отвечает, и останавливает повторы о падении.
Можно ли упоминать в сообщении дежурного через @?
+
Нет, текст сообщения формирует PingDesk, и упоминаний в нём нет. Настройте в Slack уведомления на все сообщения выбранного канала — тогда дежурный не пропустит алерт.
Можно ли отправлять в Slack уведомления только по одному сайту?
+
Да. В разделе «Правила уведомлений» создайте правило, выберите область «Сайты», нужный сайт и тип события, а в поле «Каналы» — канал Slack. Стандартные правила, которые шлют всё во все каналы, при необходимости отключите.
Сообщения перестали приходить. Что проверить?
+
Чаще всего вебхук удалили или приложение отключили в рабочем пространстве. Откройте «Журнал уведомлений»: если отправки отмечены ошибкой, создайте новый вебхук и обновите канал. Убедитесь также, что канал в PingDesk активен. Если Slack не принял сообщение, PingDesk сам повторяет отправку через 1, 5, 15, 30 и 60 минут, пока проблема актуальна, — каждая попытка видна в том же журнале.