Utwórz monitor, dodaj jedną linię do zadania i pozwól Cronitorex skorelować pingi w timeline. Gdy ping się spóźnia albo nie dociera, alert trafia do Ciebie w ciągu 60 sekund.
Wybierz nazwę, np. db-backup, i powiedz Cronitorex, jak często zadanie powinno się uruchamiać. Ten harmonogram staje się kontraktem, którego zadanie musi dotrzymać.
Wyślij run na starcie oraz complete lub fail na końcu. Ping może wysłać wszystko, co potrafi wykonać żądanie HTTP.
Cronitorex buduje timeline z Twoich pingów, wykrywa pominięte i nieudane uruchomienia i alarmuje przez e-mail, Telegram, Discord, Slack lub webhook.
Wybierz, co pasuje do Twojego stacku. Każdy wariant rozmawia z tym samym API i używa tych samych trzech stanów: run, complete, fail.
0 2 * * * curl -fsS "https://api.cronitorex.com/ping/db-backup?api_key=$CRX_KEY&status=run" >/dev/null; /usr/local/bin/backup.sh && curl -fsS "https://api.cronitorex.com/ping/db-backup?api_key=$CRX_KEY&status=complete" >/dev/null || curl -fsS "https://api.cronitorex.com/ping/db-backup?api_key=$CRX_KEY&status=fail" >/dev/null
#!/usr/bin/env bash
set -euo pipefail
ping() {
curl -fsS "https://api.cronitorex.com/ping/db-backup?status=$1" \
-H "Authorization: Bearer $CRONITOREX_API_KEY" >/dev/null
}
ping run
if /usr/local/bin/backup.sh; then
ping complete
else
ping fail
fi import os, requests
API = "https://api.cronitorex.com/ping/db-backup"
HEADERS = {"Authorization": "Bearer " + os.environ["CRONITOREX_API_KEY"]}
requests.get(API, params={"status": "run"}, headers=HEADERS)
try:
run_backup()
requests.get(API, params={"status": "complete"}, headers=HEADERS)
except Exception:
requests.get(API, params={"status": "fail"}, headers=HEADERS)
raise curl -fsS "https://api.cronitorex.com/ping/db-backup?status=run" \ -H "Authorization: Bearer $CRONITOREX_API_KEY" /usr/local/bin/backup.sh curl -fsS "https://api.cronitorex.com/ping/db-backup?status=complete" \ -H "Authorization: Bearer $CRONITOREX_API_KEY"
Cisza też jest sygnałem. Cronitorex oczekuje kolejnego uruchomienia w ustawionym przez Ciebie interwale, plus okres karencji, który amortyzuje normalne odchyłki.
Ping run jeszcze nie dotarł, ale okres karencji wciąż trwa. Uruchomienie jest oznaczone jako spóźnione i żaden alert nie wychodzi.
Okres karencji minął bez pingu. Cronitorex wysyła alert o pominięciu: zadanie w ogóle się nie uruchomiło.
Ping fail, albo ping run bez zakończenia przed limitem czasu, oznacza uruchomienie jako nieudane i alarmuje natychmiast.
Ping to jedno żądanie HTTPS. Korelacja, wykrywanie i alerty dzieją się po stronie Cronitorex.
Zarejestruj się, skopiuj klucz API i wklej polecenie curl do swojego crontaba. To wszystko, co jest potrzebne.