Cron-Jobs mit einem Heartbeat überwachen

Aktualisiert am Oktober 26, 2026 2 Min. Lesezeit

Ein Cron-Job-Monitor funktioniert umgekehrt wie eine Website-Prüfung: Ihr Job ruft bei jedem Lauf eine URL auf. Kommt der Aufruf nicht rechtzeitig an, erhalten Sie einen Alarm. Nutzen Sie ihn für Backups, nächtliche Importe, Queue-Worker und alles andere, was läuft, ohne dass jemand zusieht.

Cron-Job-Monitor anlegen

Öffnen Sie Monitors, wählen Sie den Filter Cron jobs und dann New cron job.Wählen Sie unter The job runs entweder On an interval oder On a cron schedule.Geben Sie für einen Cron-Zeitplan die Cron expression aus Ihrer Crontab ein, etwa 0 3 * * *, sowie die Time zone, in der die Crontab des Servers läuft. Das Formular zeigt schon beim Tippen die nächsten Läufe an, und die Sommerzeit wird berücksichtigt.Legen Sie die Grace period fest: wie spät der Ping kommen darf, bevor wir alarmieren.Legen Sie optional eine Maximum run time fest, um alarmiert zu werden, wenn ein Lauf zu lange dauert.Haken Sie die Alarmkanäle an und wählen Sie Create monitor. Kopieren Sie die Ping URL von der Seite, die sich öffnet.

URL aus Ihrem Job aufrufen

Am einfachsten pingt der Job, wenn er erfolgreich war:

0 3 * * * /usr/local/bin/backup.sh && curl -fsS -m 10 –retry 3 -o /dev/null https://app.uptimecheck.com/api/hb/your-token

Mit && verknüpft, wird der Ping nur gesendet, wenn der Job erfolgreich war. GET-, POST- und HEAD-Anfragen zählen gleichermaßen.

Laufzeit, Exit-Codes und Ausgabe

Rufen Sie zu Beginn des Jobs die Ping-URL mit angehängtem /start auf. So sehen Sie, wie lange jeder Lauf gedauert hat, und die maximale Laufzeit kann einen Alarm auslösen.Rufen Sie sie mit /fail oder mit dem Exit-Code auf, etwa /1, um zu melden, wie der Lauf geendet hat. /0 bedeutet Erfolg.Senden Sie die Ausgabe des Jobs per POST, dann wird sie bei Fehlschlägen und im Alarm angezeigt. Wir speichern davon 10.000 Zeichen, Anfang und Ende, und Anfragen über 64 kB werden abgelehnt. Senden Sie bei einem langen Log also den letzten Teil, wie unten gezeigt.

0 3 * * * curl -fsS -m 10 –retry 3 -o /dev/null https://app.uptimecheck.com/api/hb/your-token/start; /usr/local/bin/backup.sh > /tmp/backup.log 2>&1; code=$?; tail -c 60000 /tmp/backup.log | curl -fsS -m 10 –retry 3 –data-binary @- -o /dev/null https://app.uptimecheck.com/api/hb/your-token/$code

Die Seite des Cron-Jobs zeigt beide Beispiele mit Ihrer eigenen Ping-URL; kopieren Sie sie von dort. Für Laravel, Kubernetes, GitHub Actions, systemd und Windows siehe Ping-Beispiele für Cron-Jobs. Mehr zum Cron-Job-Monitoring und dazu, wie Sie Cron-Jobs mit Heartbeats überwachen.

War dieser Artikel hilfreich?

Testen Sie es in Ihrem eigenen Workspace

14 Tage kostenlos testen · Danach gratis für 5 Monitore · Keine Kreditkarte

Kommen Sie nicht weiter?

Schreiben Sie an support@uptimecheck.com, wir antworten innerhalb von 24 Stunden.

Sie möchten automatisieren? Die API-Referenz deckt REST-API, Webhooks, Cron-Job-Pings und MCP ab.