Мониторинг cron jobs с heartbeat-алертами
Знайте, когда cron, бэкапы, воркеры или импорты перестают выполняться вовремя.
Heartbeat для cron
Задача вызывает уникальный HTTPS URL по завершении; SitePuls ждёт пинг в окне.
Пропуск окна — пропуск запуска
Нет пинга (с учётом grace) — монитор down, уведомления по контактам.
Что мониторить
Бэкапы, ETL, отчёты, прогрев кэша — работа без постоянного дашборда.
Каналы
Email, Telegram, webhook — как у других мониторов.
Отдельный монитор на задачу
Свой URL heartbeat — видно, какой пайплайн упал.
Интервал и grace
Долгие задачи — шире окно, меньше ложных алертов.
Дополняет API
API — онлайн-сервис; heartbeat — пакетная работа.
Ограничения
SitePuls не запускает cron и не заменяет поиск по логам.
Что можно проверять в SitePuls на этой странице
- Следит за cron, бэкапами и импортами, которые должны отчитываться вовремя.
- Фиксирует пропущенные heartbeat, когда фоновая работа перестаёт пинговать.
- Алерт, если cron или воркеры перестали отчитываться.
Куда уходят оповещения об инцидентах
- Адреса электронной почты в контактах получают письма при открытии и закрытии инцидентов (в рамках настроек уведомлений).
- Уведомления в Telegram через бота SitePuls после привязки чата к контакту (включая сценарий /start для ожидающих контактов).
- HTTPS-вебхуки с JSON: тип события, идентификаторы монитора, статус, время, при необходимости id инцидента и короткое сообщение — для своих интеграций.
- Режим Slack-compatible incoming webhook: отдельный формат полезной нагрузки в настройках контакта.
Практический гайд по мониторингу
Пример ниже иллюстративный — значения вымышленные, не данные реальных клиентов.
Workflow мониторинга cron
- Список задач по расписанию и владельцев.
- Heartbeat-пинг после успешного завершения каждой задачи.
- Алерты о пропуске — в тот же канал, что и аптайм.
Пример вызова heartbeat (иллюстрация)
# После успешного завершения cron:
curl -fsS -X POST "https://heartbeat-endpoint.example/ping"
# Используйте URL из монитора SitePuls — не храните токены в коде.
Частые ошибки
- Полагаться только на логи, которые никто не читает ежедневно.
- Нет алерта, когда задача перестала работать, а сайт онлайн.
- Пинг в начале задачи, а не после успешного завершения.
Частые вопросы
Как работает мониторинг cron?
Задача шлёт heartbeat; при пропуске SitePuls может алертить команду.
Что мониторить?
Бэкапы, импорты, воркеры, cleanup и другие расписания.
Если cron упал?
Уведомление команде — разобраться до влияния на пользователей.
То же, что heartbeat?
Да, тот же тип монитора; здесь акцент на cron.
Один URL на всё?
Лучше отдельный монитор на каждую задачу.
Serverless?
Если по завершении есть исходящий HTTPS к URL.
SitePuls запускает cron?
Нет — только приём пингов завершения.
Старт?
Heartbeat-монитор, URL в скрипт, интервал, контакты.