Cronitor: мониторинг cron-задач без головной боли

Обзор Cronitor — сервиса мониторинга cron jobs, бэкапов и scheduled tasks. Тарифы, интеграции, алерты и честный разбор плюсов и минусов.

Если у вас есть cron-задачи — а они есть у всех, кто работает с серверами — вы знаете это чувство: бэкап не выполнился в три ночи, а вы узнали об этом через неделю. Cronitor решает именно эту проблему. Это мониторинг scheduled tasks, который следит за тем, чтобы ваши задачи выполнялись вовремя, и поднимает тревогу, если что-то пошло не так.

Cronitor — небольшой, сфокусированный сервис от команды из США. Не комбайн вроде Datadog, а инструмент, который делает одну вещь и делает её хорошо.

Как это работает

Принцип до смешного простой. Вы создаёте «монитор» в Cronitor — это по сути эндпоинт, который ждёт HTTP-запрос в определённое время. В cron-задачу добавляете curl-вызов в начале (начало выполнения) и в конце (успешное завершение). Если Cronitor не получает ожидаемый пинг — алерт.

# Пример интеграции в cron-скрипт
curl -s "https://cronitor.link/p/YOUR-KEY/backup-db/run" -o /dev/null
pg_dump mydb > backup.sql && curl -s "https://cronitor.link/p/YOUR-KEY/backup-db/complete" -o /dev/null

Никаких агентов, никакой сложной настройки. Запрос — получили ответ. Всё.

Возможности

Cronitor умеет отслеживать не только cron-задачи, но и heartbeat-ы (периодические проверки, что сервис жив), а также обычные health checks по HTTP. Три режима мониторинга покрывают практически любой сценарий.

Алерты приходят в Slack, email, Telegram, PagerDuty, OpsGenie, Discord и webhook. Можно настроить разные каналы для разных задач. Хотите, чтобы упавший бэкап слал уведомление в Telegram, а проблемы с продакшеном — в PagerDuty? Без проблем.

Есть логирование — можно слать текст логов вместе с пином, и они сохранятся в дашборде. Удобно для отладки: видишь не только факт падения задачи, но и контекст.

Из приятного: статус-страница для клиентов, shared мониторы для команд, правила тишины (чтобы не спамить во время плановых работ).

Тарифы

Cronitor предлагает пять уровней:

  • Hobby: бесплатно — 5 мониторов, 1 пользователь, Slack и email
  • Starter: $7/мес — 15 мониторов, Telegram, webhook
  • Professional: $49/мес — 100 мониторов, команда из 5, PagerDuty
  • Business: $199/мес — unlimited мониторов, RBAC, SSO
  • Enterprise: кастом — on-premise, audit logs, SLA

Для личных проектов бесплатного тарифа хватает с запасом. Для стартапов — Starter за $7 выглядит честной ценой.

Что понравилось

Интерфейс минималистичный и быстрый. Зашёл, создал монитор, скопировал curl — заняло 30 секунд. Документация толковая, с примерами для десятка языков и фреймворков. Интеграция с Kubernetes, Docker, Laravel, Django есть из коробки — не надо изобретать велосипед.

Сама идея «простого мониторинга cron» гениальна в своей очевидности. Тысячи серверов по миру молча роняют задачи каждый день, и никто об этом не знает. Cronitor закрывает слепую зону.

Что смущает

Для сложных сценариев с графами зависимостей и многоступенчатыми пайплайнами Cronitor слабоват. Это не замена полноценному observability-инструменту. Шаг влево от мониторинга cron — и вы на территории Healthchecks.io или UptimeRobot.

Цена на Professional-уровне ($49) может показаться высокой для маленькой команды, которой нужно больше 15 мониторов, но меньше 100.

Вердикт

Cronitor — узкий, но отличный инструмент. Если у вас 5–50 cron-задач и вы хотите спать спокойно — берите, не пожалеете. Бесплатного тарифа достаточно, чтобы попробовать и понять, нужно ли вам это вообще. Документация и скорость онбординга на высоте.