Альтернатива Healthchecks.io на русском
Мониторинг cron-задач по пингу с открытым кодом. Работает.
Чем является Healthchecks.io
Healthchecks.io следит за тем, что ваши задачи отработали, но сам их не запускает. Скрипт в конце работы дёргает уникальный URL; если пинг не пришёл в срок - приходит алерт. Есть отдельный сигнал о начале работы, так что видно и длительность выполнения.
Код открыт под лицензией BSD, сервис можно развернуть на своём сервере. Тарифы: Hobbyist бесплатно (до 20 проверок и до 3 участников), Business 20 $ в месяц (до 100 проверок), Business Plus 80 $ в месяц (до 1000 проверок).
Текущее состояние
Сервис работает и активно развивается. Это зрелый продукт с большим набором готовых интеграций - Slack, PagerDuty, Telegram и другие.
Healthchecks.io и CronBox: соответствие возможностей
| Возможность | Healthchecks.io | CronBox |
|---|---|---|
| Heartbeat-мониторинг | Да, основная функция | Да, с интервалом или cron-расписанием и запасом времени |
| Отдельный сигнал о начале работы | Да | Да, мониторы процессов с пингом начала и конца |
| Запуск HTTP-запросов по расписанию | Нет, сервис не выполняет ваши задачи | Да: cron-задачи, отложенные задачи и цепочки |
| Проверка SSL-сертификатов, ICMP, TCP | Нет | Да |
| Интеграции | Много готовых: Slack, PagerDuty, Telegram и другие | Email, Telegram, MAX, webhook |
| Участники команды | Да, начиная с бесплатного тарифа | Нет, рабочее пространство принадлежит одному владельцу |
| Установка на свой сервер | Да, открытый код под BSD | Нет, только облако |
| Оплата | В долларах | Российские карты и СБП через ЮKassa, для юрлиц - счёт и закрывающие документы |
| Где хранятся данные | За пределами России | Россия |
Лимиты CronBox - число задач, мониторов, доступные каналы и минимальный интервал - зависят от тарифа. Актуальные значения на странице тарифов.
Как перенести мониторы из Healthchecks.io
- 1
Выпишите проверки
Для каждой проверки нужны имя, период и grace period - то есть насколько задача может опоздать, прежде чем это станет проблемой. Эти же значения переносятся в CronBox один в один.
- 2
Получите токен API
Задачи можно завести руками в панели управления, но при переносе десятка расписаний быстрее работать через API. Токен выдаётся по логину и паролю и живёт 15 минут.
curl -X POST https://api.cronbox.ru/v1/auth/login \ -H "Content-Type: application/json" \ -d '{"email": "you@example.com", "password": "..."}' - 3
Перенесите мониторы и замените ping-URL
Создайте heartbeat-монитор с той же периодичностью и запасом времени, получите его токен и подставьте новый URL в конец скрипта вместо старого.
curl -X POST https://api.cronbox.ru/v1/workspaces/WORKSPACE_ID/heartbeats \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "backup-daily", "schedule_type": "interval", "expected_interval": "24h", "grace_period": "30m"}' # в скрипте: curl -fsS https://api.cronbox.ru/ping/PING_TOKEN - 4
Решите, что делать с задачами без своего сервера
Если часть задач вы держали на сервере только ради cron, их можно не переносить, а превратить в cron-задачи CronBox: сервис сам сходит на ваш эндпоинт по расписанию, и отдельный монитор для них уже не нужен.
- 5
Настройте каналы уведомлений
Email, Telegram, MAX и webhook настраиваются на уровне рабочего пространства. Telegram и MAX подключаются по одноразовому коду через бота. Набор доступных каналов зависит от тарифа.
- 6
Проверьте первые запуски
Раздел «Выполнения» показывает код ответа, тело и длительность каждого запроса. Задачу можно запустить вручную, не дожидаясь расписания, - так проще убедиться, что заголовки и авторизация переехали правильно.
Массового импорта у нас нет - переносить задачи придётся скриптом по API или руками. Полное описание эндпоинтов - в документации.
Чего у CronBox нет
Список честный: если что-то из этого критично, лучше узнать сейчас, а не после переноса.
- Участников команды и ролей нет: рабочее пространство принадлежит одному владельцу. Несколько пространств - это способ разделить проекты, а не выдать доступ коллегам.
- Входа через OAuth и SSO нет: email с паролем или вход по одноразовому коду на почту.
- Открытого кода и версии для установки на свой сервер нет.
- Готовых интеграций со Slack, PagerDuty и Discord нет - есть исходящий webhook, который можно направить куда угодно.
- Массового импорта задач нет: перенос идёт через API или руками.
- Мобильных приложений и консольной утилиты нет.
- Готовых интеграций уровня Healthchecks.io у нас нет: список каналов ограничен четырьмя.
Короткий вывод
Healthchecks.io - честный и зрелый продукт с открытым кодом: если нужен только heartbeat-мониторинг, а английский интерфейс и оплата в долларах не мешают, он полностью закрывает задачу и его можно поставить у себя. CronBox стоит смотреть, если кроме мониторинга нужен сам запуск задач, проверки SSL и портов, алерты в Telegram или MAX и российское юрлицо с закрывающими документами. Участников команды и self-hosted версии у нас нет - это выбор не в нашу пользу.