Уведомления в Slack: жив ли сервис
На ноутбуке API может отвечать, а для клиентов — уже нет: деплой, DNS, SSL, регион. Внешний мониторинг бьёт в публичный health URL из интернета. Slack — привычное место для команды, поэтому алерты владельца туда удобнее, чем опрос дашборда.
StillOnline шлёт текстовые сообщения в Incoming Webhook Slack, который создаёте вы. Отдельного бота StillOnline в workspace не нужно — только URL webhook в настройках аккаунта.
Что приходит в Slack
После настройки check StillOnline может писать в канал:
| Событие | Когда |
|---|---|
| Сбой check | Два неудачных probe подряд (статус down). Не чаще одного раза в 15 минут на владельца (как email). |
| Восстановление | Статус снова operational после down/degraded. |
| 24 ч без сбоев | Check 24 часа подряд без падения (отдельное сообщение). |
В сообщении: проект, имя check, URL и ссылка на публичную status page.
StillOnline не шлёт сообщение на каждый неудачный probe — только смену статуса и milestone 24 ч.
Перед подключением Slack
- Аккаунт StillOnline — вход (Google или GitHub).
- Проект с HTTP-проверкой — URL с ответом 2xx (быстрый старт health check).
- Права в Slack добавить приложение / webhook в канал (
#alerts,#incidentsи т.п.).
На Free — один канал алертов владельца: Email, Telegram или Slack. На Pro / Ultimate можно включить email, Telegram и Slack вместе (Тарифы).
Часть A — Incoming Webhook в Slack
Шаг 1 — Открыть Slack API
Перейдите на api.slack.com/apps, войдите в нужный workspace.
Шаг 2 — Создать приложение
- Create New App → From scratch.
- App Name: например
StillOnline Alerts. - Workspace → Create App.
Шаг 3 — Включить Incoming Webhooks
-
В меню слева: Incoming Webhooks.
-
Activate Incoming Webhooks → On.
-
Add New Webhook to Workspace.
-
Выберите канал → Allow.
-
Скопируйте URL вида:
https://hooks.slack.com/services/T…/B…/…
URL — как пароль: с ним можно писать в канал.
Шаг 4 — (По желанию) Отдельный канал
Заведите #alerts, чтобы не смешивать с общим чатом.
Часть B — Webhook в StillOnline
Шаг 5 — Настройки уведомлений
- https://stillonline.tech/ru/app/settings
- Блок Уведомления владельца.
Шаг 6 — URL и включение Slack
- В секции Slack вставьте Incoming Webhook URL.
- Включите Slack-алерты.
- На Free в Free: один канал выберите Slack (если был только email, email-алерты владельца отключатся, пока не смените канал или тариф).
- Сохранить.
Некорректный URL (не https://hooks.slack.com/services/...) форма не примет.
Шаг 7 — Проверьте check
В Проектах откройте проект: есть HTTP check на живой URL (например https://api.example.com/health). Probe по интервалу тарифа (на Free — 5 минут).
Часть C — Проверка алертов
Шаг 8 — Тестовый сбой (осторожно)
На staging или временный URL:
- Укажите URL с 500 или недоступный хост, или кратко остановите сервис.
- Дождитесь двух неудачных циклов probe (на интервале 5 мин — до ~10 минут).
- В Slack: StillOnline — сбой check (или check down на EN-локали интерфейса).
Шаг 9 — Восстановление
Верните рабочий URL. После успешных probe — check снова OK / recovered.
Для клиентов оставьте ссылку на status page — Slack не заменяет публичный статус.
Slack, email и Telegram
| Канал | Кому подходит |
|---|---|
| Slack | Команда в Slack, канал #alerts |
| Почта как единственный канал на Free | |
| Telegram | Мобильные алерты; привязка бота в настройках |
Подписчики на публичной status page получают email через Google — это не то же самое, что Slack владельца.
Проблемы
| Симптом | Что проверить |
|---|---|
| Нет сообщения | Check включён? Нужны 2 fail для down? На Free выбран Slack как единственный канал? |
| Тишина после сохранения | URL скопирован целиком; канал не архивирован |
| Много сообщений | Down — throttle 15 мин; recovery и 24 ч отдельно |
| Не тот workspace | Webhook привязан к одному workspace |
Доставка пишется в NotificationLog (канал SLACK).
Связанные материалы
FAQ
Нужен платный Slack?
Incoming Webhooks работают на бесплатном workspace. Нужно право ставить приложения.
Можно в личку (DM)?
Обычно делают канал через Add New Webhook to Workspace. DM — через отдельные настройки Slack.
Есть OAuth / slash-команды StillOnline в Slack?
Пока нет — только Incoming Webhooks, без review в Marketplace.
Алерт на каждый timeout?
Нет. Нужен статус down после серии fail. Краткий blip может быть degraded без алерта.
Slack и email на Free вместе?
Нет — один канал владельца. На Pro — можно несколько.
Как сменить webhook?
Новый webhook в Slack → вставить URL в настройках → Сохранить. Пустое поле при сохранении оставляет старый URL.