Куда отправлять уведомления
Любая обработка ошибок бесполезна, если о них некому узнавать. Уведомления — это финальное звено: то, что превращает «сценарий упал» в «человек прочитал и принял меры».
Каналы
Самые рабочие варианты:
- Telegram — мгновенно, удобно с телефона, легко делать чаты команды.
- Slack / Discord — для команд, которые там работают; можно завести отдельный канал «alerts».
- Email — медленнее, но не зависит от мессенджера и хорошо для отчётных уведомлений.
- SMS — для самых критичных событий, когда сценарий обрабатывает деньги или здоровье.
- PagerDuty / OpsGenie — для сценариев в продакшене, где важна эскалация и дежурства.
В большинстве случаев хватит одного канала. Если события разной важности — используйте два: «всё что угодно» в один канал, «только критичное» в другой.
Как не создать спам
Уведомления, на которые перестают обращать внимание — это хуже, чем их отсутствие. Несколько правил:
- Не уведомляйте на каждый сбой одного item. Если из 1000 писем не дошло одно — это не повод писать в чат. Достаточно записать в журнал и собрать отчёт за сутки.
- Группируйте. Если упало подряд 50 вызовов одного API за минуту — это одна проблема, не пятьдесят. В обработчике ошибок можно ставить таймер «не отправлять чаще раза в N минут».
- Различайте severity. Сбой в сценарии оплаты — критично. Сбой в сценарии «синхронизация по расписанию раз в час» — обычно подождёт до утра.
- Делайте сообщение читабельным. Сразу видно: что, где, когда, ссылка. Без этого в потоке сообщений уведомление утонет.
Шаблон сообщения
Пример сообщения для Telegram:
🚨 Workflow failed
Workflow: Order processing
Node: HTTP Request (Stripe charge)
When: 2025-04-12 14:33 UTC
Error: Request timeout
Execution: https://n8n.example.com/execution/12345
Эмодзи в начале нужно для быстрой визуальной фильтрации в чате — глаз цепляется за иконку, а не вчитывается в текст.
Уведомления как часть error workflow
Поставьте после Error Trigger ровно те узлы, которые отправят сообщение. Например, для Telegram:
Error Trigger → Edit Fields (составить текст) → Telegram (отправить)
В Edit Fields соберите текст из полученных от Error Trigger полей, в Telegram — отправьте в нужный чат.
Если каналов несколько — можно добавить Switch (или IF) после Error Trigger, чтобы по severity направлять в разные стороны.
Что ещё можно делать в обработчике
Помимо уведомлений, в error workflow часто полезно:
- Записать сбой в базу или Google Sheets — чтобы потом построить статистику по ошибкам.
- Поставить задачу в трекер (Jira, Trello, Asana) — если сбой требует ручного разбора.
- Создать тикет в системе клиентской поддержки — если ошибка касается конкретного клиента.
Всё это — обычные узлы. Главное, чтобы сам обработчик ошибок не упал, поэтому делайте его как можно проще: один-два узла отправки + минимум логики.
Итог по главе
- Считайте, что сценарий обязательно упадёт.
- На уровне узла используйте Retry on Fail и Continue on Fail.
- На уровне сценария — Error Workflow с Error Trigger.
- Уведомления должны быть короткие, читабельные, с ссылкой на execution.
- Регулярно проверяйте, что обработчик ошибок ещё работает.