Tracker.ru На главную

Heartbeat-мониторы — теперь алерты приходят и в MAX

Heartbeat-мониторы Tracker.ru теперь поддерживают MAX как полноценный канал уведомлений: сообщение о пропущенном пинге и о возврате к норме приходит в чат рядом с Telegram и email.

Heartbeat-мониторы — теперь алерты приходят и в MAX

Если в инфраструктуре есть cron-задачи, скрипты бэкапа, очереди фоновых воркеров, ночные ETL-процессы — рано или поздно встаёт вопрос: «как узнать, что процесс перестал запускаться?». Логи показывают только то, что отработало; молчание никто не присылает. Эту нишу закрывает heartbeat-мониторинг Tracker.ru. Скрипт пингает специальный URL после успешной работы; если за положенное время пинг не пришёл — Tracker присылает алерт.

Раньше эти алерты приходили только в Telegram и на email. С обновлением мы добавили мессенджер MAX как полноценный канал и для heartbeat-уведомлений. Теперь у вас есть третий независимый путь, по которому придёт сообщение о пропущенной cron-задаче — в дополнение к почте и Telegram.

Что именно приходит в MAX

В чате с ботом появляются два типа сообщений по heartbeat-монитору.

Heartbeat пропущен. Когда монитор не получил очередной пинг в ожидаемый интервал — приходит сообщение «💔 Heartbeat пропущен!» с названием монитора, временем последнего успешного пинга и тем, какой период ожидался. Этого достаточно, чтобы понять — какая именно задача замолчала и пора смотреть, что с ней.

Heartbeat восстановлен. Когда пинг снова начал приходить (задача починилась и отработала) — приходит сообщение «💚 Heartbeat восстановлен!» с названием монитора и временем простоя — сколько именно процесс не пинговал. Удобно для ситуаций, когда процесс падает и поднимается, а вы хотите понимать, что к утру всё вернулось в норму без вашего участия.

Сообщения короткие, по делу. За деталями — графиком пингов, токеном, настройками, списком получателей — открываете монитор в списке heartbeat-мониторов в кабинете.

Как включить MAX-уведомления у heartbeat-монитора

Нужны три шага.

  1. Подключите MAX. Если этого ещё не сделано — откройте настройки уведомлений, найдите раздел MAX и пройдите быструю привязку. Бот пришлёт код подтверждения, вы вводите его в чат — связка сделана.
  2. Включите MAX в настройках heartbeat-монитора. На странице создания или редактирования монитора в разделе «Уведомления» появился переключатель «MAX» рядом с уже привычными «Telegram» и «Email». Можно оставить только один из каналов или включить несколько параллельно.
  3. Сохраните. При следующем срабатывании события «пинг не пришёл» или «пинг вернулся» — сообщение придёт в MAX вместе с другими каналами, на которые вы подписались.

Никаких отдельных платных опций для этого включать не нужно: переключатель доступен в самой форме монитора.

Кому полезны heartbeat-алерты в MAX

Несколько типичных сценариев, где MAX оказывается удобным каналом для heartbeat-алертов.

Бэкапы базы данных. Скрипт бэкапа отрабатывает каждую ночь в 3:00 и отправляет успешный пинг в Tracker. Если ночью не получилось — утром в MAX вместо тишины приходит «💔 Heartbeat пропущен!» до того, как вы откроете рабочую почту. Это даёт час форы на восстановление до того, как кто-то заметит, что бэкапа за вчера нет.

Фоновые воркеры очередей. Воркер, который раз в минуту разгребает очередь задач, пингает heartbeat по своему успешному циклу. Если он залип, упал или просто не запустился после деплоя — пинг перестанет приходить, и в течение примерно минуты в MAX придёт уведомление. Классический мониторинг доступности здесь не помогает: воркер не имеет HTTP-интерфейса. Heartbeat — самый прямой способ ловить тишину.

Cron-джобы для ETL и отчётов. Утренний ETL-процесс должен закончиться к 9:00, чтобы аналитики увидели свежие цифры. Если процесс упал среди ночи и пинг не пришёл — в MAX придёт алерт сразу после 9:00, и команда успеет до планёрки понять, что данных за вчерашний день не будет.

Скрипты на машинах сотрудников. Иногда heartbeat ставят на скрипт, который раз в час проверяет VPN, синхронизирует данные или сверяет резервную копию папки на удалённый сервер. Если скрипт перестал работать (ноут перезагрузили, кончилось место, отвалилась сеть) — алерт в MAX приходит мгновенно.

Зачем MAX параллельно с Telegram и email

Telegram и почта уже присылают heartbeat-алерты — зачем дублировать. Несколько причин, почему стоит включить именно MAX рядом с ними.

Независимый путь доставки. MAX — российский мессенджер, отдельная платформа, отдельные серверы. Если в моменте что-то идёт не так с Telegram (блокировка, перебои, рестарт клиента, забыли логин на новом устройстве) или с почтой (письма ушли в спам, забит ящик) — алерт всё равно прилетит в MAX. Для критичных процессов, где пропускать событие нельзя, дублирующие каналы — обычная практика.

Корпоративный контур. В части компаний внутренние коммуникации перешли на MAX, а Telegram остался личным. Heartbeat-алерты по бэкапам или прод-ETL логичнее держать в рабочем мессенджере, где открыт чат команды.

Полный паритет с Telegram. Если вы подключали MAX раньше и оставались на Telegram «потому что только там приходили скриншоты» — теперь и скриншоты приходят в MAX, и heartbeat. Можно переключиться на «MAX-only», если так удобнее.

Что увидите в кабинете

После включения MAX в форме heartbeat-монитора отметка о MAX в разделе «Уведомления» появится наравне с Telegram и Email. В журнале уведомлений каждое отправленное сообщение фиксируется отдельной записью — видны статус доставки, время и текст.

Если по какой-то причине сообщение не дошло — это будет видно в журнале по статусу доставки, и привязку MAX можно перевыпустить заново через настройки уведомлений.

См. также

Если у вас уже есть heartbeat-мониторы — откройте любой из них в списке и добавьте MAX в каналы уведомлений. Если ещё нет — создайте первый, его обычно можно настроить за пять минут: задаёте интервал, копируете URL пинга, вставляете в свою cron-команду после успешного завершения работы.