Docs/Uptime Monitoring/Heartbeat Monitors

Heartbeat Monitore

Heartbeat Monitore sind passive Monitore. Statt dass Unseenr deinen Service prüft, sendet dein Service periodische Pings an Unseenr. Wenn ein Ping innerhalb des erwarteten Intervalls plus Karenzzeit ausbleibt, wird der Monitor als DOWN markiert.

Einsatzbereiche

  • Cronjobs: Prüfe ob geplante Aufgaben erfolgreich gelaufen sind
  • Background Worker: Stelle sicher, dass Worker-Prozesse aktiv sind
  • Batch-Jobs: Bestätige, dass Datenverarbeitung abgeschlossen wurde
  • Server-Health: Periodische Selbstmeldung von Servern

Wie es funktioniert

  1. Erstelle einen Heartbeat Monitor in deinem Projekt
  2. Unseenr generiert einen einzigartigen Heartbeat Token
  3. Dein Service sendet HTTP-Anfragen an https://uptime.unseenr.io/{token}
  4. Wenn kein Ping innerhalb des Intervalls + Karenzzeit eintrifft, wird der Monitor DOWN

Ping-Typen (CheckIn Kinds)

Typ Beschreibung
PING Einfaches "Ich lebe" Signal (Standard)
START Markiert den Beginn eines Jobs
FINISH Markiert den erfolgreichen Abschluss eines Jobs

Die Verwendung von START + FINISH Paaren ermöglicht es, Job-Dauer zu verfolgen und Jobs zu erkennen, die gestartet aber nie abgeschlossen wurden.

Konfiguration

Einstellung Standard Beschreibung
Intervall 5 min Erwartete Zeit zwischen Pings
Karenzzeit 60 sek Zusätzliche Zeit bevor als verpasst markiert
Fehlerschwelle 2 Verpasste Pings bevor DOWN

Pings senden

Einfacher Ping (curl)

# Einfacher Heartbeat
curl -s https://uptime.unseenr.io/DEIN_TOKEN

# Mit Run ID zur Verfolgung spezifischer Job-Runs
curl -s "https://uptime.unseenr.io/DEIN_TOKEN?kind=start&runId=job-123"
# ... Job läuft ...
curl -s "https://uptime.unseenr.io/DEIN_TOKEN?kind=finish&runId=job-123"

Aus einem Cronjob

# Zur Crontab hinzufügen
*/5 * * * * curl -fsS --retry 3 https://uptime.unseenr.io/DEIN_TOKEN > /dev/null

Aus Node.js

// Am Ende deines Background Jobs
await fetch("https://uptime.unseenr.io/DEIN_TOKEN");

Rate Limiting

Heartbeat-Pings sind auf 5 Pings pro Sekunde pro Token begrenzt. Das verhindert versehentliches Flooding durch falsch konfigurierte Services.

Check-In-Historie

Jeder Heartbeat Monitor verfolgt seine Check-In-Historie. Du kannst sehen:

  • Zeitstempel jedes Pings
  • Typ (PING, START, FINISH)
  • Status (OK, ERROR, MISSED)
  • Dauer (für START/FINISH Paare)
  • Request Body (wenn gesendet)
Auch verfügbar auf:English