Monitoring uptime sterowany ze skryptu
Pilnuj swoich API, zadań cron, portów i certyfikatów, twórz monitory i wyciszaj alerty z pipeline'u przez REST API, a gdy coś padnie, odbierz podpisany webhook. Zwykłe HTTP, bez agenta do instalowania.
- Sprawdzenie co 60 sekund
- REST API i podpisane webhooki
- Logowanie przez GitHub
curl -X POST https://api.alertsleep.com/public/v1/monitors \
-H "AuthToken: $ALERTSLEEP_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"friendly_name": "Orders API",
"url": "https://api.example.com/health",
"type": "http",
"interval_seconds": 60
}'
Co możesz monitorować
Sześć typów monitorów dla tych części stacku, które psują się w nocy.
Wepnij to w swój workflow
Wszystko poniżej to zwykłe zapytanie HTTP. Użyj curl, swojego CI albo dowolnego klienta HTTP.
Wycisz alerty na czas wdrożenia
Otwórz okno serwisowe z pipeline'u i zamknij je po zakończeniu deployu. Okno ma maksymalną długość, więc job, który padnie w połowie, nie wyciszy Twoich monitorów na zawsze.
# before the deploy: mute alerts for at most 15 minutes
START=$(date -u +%FT%TZ); END=$(date -u -d "+15 min" +%FT%TZ)
WINDOW_ID=$(curl -fsS -X POST https://api.alertsleep.com/public/v1/maintenance-windows \
-H "AuthToken: $ALERTSLEEP_TOKEN" -H "Content-Type: application/json" \
-d "{\"title\":\"Deploy $CI_COMMIT_SHORT_SHA\",\"starts_at\":\"$START\",
\"ends_at\":\"$END\",\"monitor_ids\":[\"$MONITOR_ID\"]}" \
| jq -r .maintenance_window.id)
./deploy.sh
# after it: end the window early
curl -fsS -X POST https://api.alertsleep.com/public/v1/maintenance-windows/$WINDOW_ID/end \
-H "AuthToken: $ALERTSLEEP_TOKEN"Heartbeaty z crona
Wywołaj /start, gdy zadanie rusza, żeby wyłapać także przebieg, który się zawiesi, a sam adres URL, gdy zakończy się sukcesem. Przy błędzie wywołaj /fail z kodem wyjścia, a e-mail wyjdzie od razu, a nie dopiero po okresie karencji.
# crontab: alert me if the nightly backup fails or never runs
# (one line in crontab)
0 3 * * * curl -fsS https://api.alertsleep.com/v1/ping/YOUR-TOKEN/start; /usr/local/bin/backup.sh && curl -fsS https://api.alertsleep.com/v1/ping/YOUR-TOKEN || curl -fsS https://api.alertsleep.com/v1/ping/YOUR-TOKEN/fail -d exit_code=$?Reaguj na awarię w swoim kodzie
Integracja webhook wysyła JSON przy monitor.down, monitor.up i zdarzeniach certyfikatu. Gdy ustawisz sekret, każde zapytanie niesie podpis HMAC-SHA256 obejmujący znacznik czasu i treść, więc możesz odrzucać podrobione i powtórzone wywołania.
// Node: verify an AlertSleep webhook
const ts = req.headers['x-alertsleep-timestamp'];
const expected = 'sha256=' + crypto
.createHmac('sha256', process.env.ALERTSLEEP_SECRET)
.update(ts + '.' + rawBody).digest('hex');
const ok = crypto.timingSafeEqual(
Buffer.from(expected),
Buffer.from(req.headers['x-alertsleep-signature']));
// body: {"version":1,"event":"monitor.down",
// "sent_at":"…","resource":{…},
// "data":{"status":"down","reason":"HTTP 503 …"}}Badge statusu w README
Każda publiczna strona statusu ma badge SVG z bieżącym stanem albo dostępnością z 30 dni, z linkiem do tej strony.
<!-- README.md -->
[](https://status.alertsleep.com/your-page)
<!-- 30-day uptime instead of the current state -->
Publiczne API pod /public/v1, z tokenem API w nagłówku AuthToken, do 500 zapytań na minutę na token.
Alerty tam, gdzie już jesteś
Kanały wybierasz osobno dla każdego monitora. Nieudane sprawdzenie najpierw powtarzamy z drugiej lokalizacji, więc chwilowy problem po naszej stronie sieci nikogo nie budzi.
- Alert mówi, co zawiodło: kod statusu, timeout, błąd DNS lub TLS albo brakujące słowo kluczowe.
- Po pierwszym udanym sprawdzeniu dostajesz powiadomienie o przywróceniu.
- SMS-y i połączenia telefoniczne są w cenie planu, od $59 rocznie.
- Alerty mogą być po angielsku, niemiecku, francusku, hiszpańsku, polsku albo czesku.
To u nich czy u Ciebie?
Gdy deploy się wywala albo API łapie timeouty, sprawdź usługi, na których stoi Twój stack. Każda strona pokazuje nasze własne sprawdzenia i oficjalne incydenty dostawcy.
Konto, któremu powierzysz tokeny
Monitory przechowują dane dostępowe do Twoich systemów, więc konto chronimy tak, jak na to zasługuje.
Logowanie przez GitHub
Uwierzytelnianie dwuskładnikowe
Zaszyfrowane dane dostępowe
Tokeny API do unieważnienia
Czym AlertSleep nie jest
Zdecyduj, zanim założysz konto.
- Nie ma CLI, SDK ani providera Terraform. API to zwykły JSON przez HTTPS, więc wystarczy curl albo dowolna biblioteka HTTP.
- To nie jest APM ani narzędzie do logów: bez trace'ów, bez śledzenia błędów, bez metryk od prawdziwych użytkowników.
- Jeden monitor wysyła jedno zapytanie. Wieloetapowe scenariusze i asercje schematu JSON umieść we własnym endpoincie health.
- Sprawdzenia idą z jednej lokalizacji, a każdą awarię potwierdzamy z drugiej; nie mamy sieci punktów pomiarowych w wielu krajach.
Darmowe narzędzia do debugowania
Bez zakładania konta.
Najczęściej Zadawane Pytania
Czy AlertSleep ma API?
Czy jest CLI albo SDK?
Jak wstrzymać alerty na czas wdrożenia?
Jak monitorować zadanie cron albo worker kolejki?
Jak zweryfikować podpis webhooka?
Czy mogę monitorować API za uwierzytelnianiem?
Jak często wykonywane są sprawdzenia?
Czy mogę wypróbować za darmo?
Dodaj pierwszy endpoint w kilka minut
Utwórz monitor w panelu albo jednym wywołaniem API. Wypróbuj za darmo przez 14 dni, bez karty.