Чек-лист мониторинга cron-задач

Расписание может падать тихо. Чек-лист помогает выбрать задачи, настроить окна heartbeat и алертить при пропуске запуска.

Инвентаризация расписаний

Перечислите cron, бэкапы, ETL-импорты, выставление счетов и воркеры очередей. Укажите частоту и допустимую задержку.

Паттерн heartbeat

После успешного запуска вызывайте уникальный HTTPS URL heartbeat. SitePuls ждёт пинг в заданном интервале.

Интервал и grace

Окно = максимальное нормальное время выполнения плюс запас. Долгие задачи требуют шире окно, чтобы не ловить ложные алерты.

Один монитор на задачу

Отдельные URL heartbeat показывают, какой пайплайн остановился — не только «что-то в batch-слое».

Контакты алертов

Пропуск heartbeat — команде, которая перезапустит воркеры, починит скрипт или восстановит бэкап, а не в общий ящик.

Вместе с аптаймом API

Heartbeat подтверждает batch-работу; мониторы API — онлайн-поверхности. Для сквозной надёжности нужны оба слоя.

Практический гайд по мониторингу

Пример ниже иллюстративный — значения вымышленные, не данные реальных клиентов.

Какие задачи стоит мониторить

  • Ночные бэкапы и экспорты, которые должны завершиться до рабочего дня.
  • Пакетные задачи биллинга, счетов или продления подписок.
  • Пересборка поискового индекса, прогрев кэша и ETL-пайплайны.
  • Скрипты продления сертификатов и синхронизация DNS, связанная с аптаймом.

Шаги настройки heartbeat

  • Создайте heartbeat-монитор с окном чуть длиннее типичного runtime задачи.
  • Пингуйте только после успешного завершения — не в начале.
  • Зафиксируйте владельца и ожидаемое расписание в runbook.
  • Проведите контрольный тест, пропустив один запуск в окне обслуживания.

Пример алерта о пропущенном cron

Heartbeat пропущен: invoice-export не отправил пинг за 45 минут

Частые ошибки

  • Мониторят только аптайм сервера, пока cron молча перестаёт работать.
  • Heartbeat в начале задачи маскирует частичные сбои.
  • Нет владельца, когда логи cron ротируются раньше, чем их прочитают.

Частые вопросы

Что такое heartbeat-проверка?

Задача пингует URL по завершении. Если пинга нет в ожидаемом окне, монитор может алертить команду.

Какие cron мониторить первыми?

Бэкапы, биллинговые выгрузки, импорты данных и cleanup, от которых тихо ломаются отчёты или хранилище.

SitePuls запускает cron?

Нет. Планировщик по-прежнему у вас. SitePuls только следит за внешним сигналом завершения.

Serverless может слать heartbeat?

Да, если функция по успешному завершению делает HTTPS-запрос на URL heartbeat.

Узнавайте, когда cron перестаёт отчитываться.

Создать heartbeat-монитор Тарифы