Создайте чек в дашборде — получите уникальный ping-URL. Дальше — одна строчка в вашем коде.
*/5 * * * * my-job && curl -fsS -m 10 https://ping.cronalive.com/<uuid> > /dev/null
[Service]
ExecStartPost=/usr/bin/curl -fsS -m 10 https://ping.cronalive.com/<uuid>
# или с кодом выхода (0 = успех):
ExecStopPost=/usr/bin/curl -fsS https://ping.cronalive.com/<uuid>/$EXIT_STATUS composer require cronalive/laravel // routes/console.php $schedule->command('backup:run') ->daily() ->pingCronalive('<uuid>'); // или авто-создание чека по slug — без захода в дашборд: $schedule->command('etl:run')->hourly()->pingCronaliveSlug('etl-run');
pip install cronalive
@cronalive.monitor('<uuid>')
def nightly_job(): ...
# или обёртка CLI:
cronalive run --id <uuid> -- /usr/local/bin/backup.sh npm i cronalive
import { monitored } from 'cronalive';
await monitored('<uuid>', () => runJob()); К ping-URL можно добавить суффикс:
/<uuid> — успех;/<uuid>/start — старт задачи (для измерения длительности);/<uuid>/fail — явный провал;/<uuid>/<код> — код выхода 0–255 (0 = успех), совместимо с systemd $EXIT_STATUS;/<uuid>/log — запись без смены статуса.Тело POST (до 100 КБ) сохраняется в лог пинга.
Вместо UUID можно пинговать по имени:
https://ping.cronalive.com/<ping-key>/<slug>.
Первый пинг с ?create=1 создаст чек сам —
удобно для деплой-скриптов. Расписание нового чека — из
query-параметров:
# простой период: period 60–31536000 сек, grace 0–2592000 сек curl "https://ping.cronalive.com/<ping-key>/etl-run?create=1&period=3600&grace=300" # либо cron-выражение с таймзоной (tz по умолчанию UTC) curl "https://ping.cronalive.com/<ping-key>/backup?create=1&cron=30+3+*+*+*&tz=Europe/Moscow"
create=1 и параметры расписания игнорируются — пинг просто засчитывается; менять расписание можно только через дашборд или API;
Ping-доменов несколько; сниппеты в дашборде подставляют
fallback автоматически (curl url1 || curl url2),
а SDK получают актуальный список из
GET /api/v1/ping-domains.
Полный справочник — API Reference
(openapi.yaml). Авторизация — ключ
проекта: read-write (ca_rw_…) для
управления и read-only (ca_ro_…)
для чтения. Ключи выпускаются в дашборде — Проекты →
API-ключи; ключ показывается один раз, в базе хранится
только хэш.
curl -H "Authorization: Bearer ca_ro_..." \ https://app.cronalive.com/api/v1/checks