Cron meldet keine Fehler. Ein Job stürzt ab, der Zeitplan läuft weiter, und du erfährst es Tage später von einem Kunden. HelloCron erwartet einen Ping von jedem Lauf und alarmiert dich innerhalb von 60 Sekunden, wenn einer ausbleibt.
Jeder Lauf meldet run beim Start, dann complete oder fail beim Ende. Zwei zusätzliche Aufrufe in deinem Crontab reichen aus. Kein Agent, kein Daemon, keine Bibliothek zu installieren.
Aus diesen Pings baut HelloCron eine Zeitleiste pro Job: Laufzeiten, Exit-Codes, Fehlerverlauf. Ein Lauf, der startet und nie endet, zählt ebenfalls als Fehler.
*/5 * * * * root hellocron ping db-backup run; /opt/backup.sh && hellocron ping db-backup complete || hellocron ping db-backup fail
Ein abgestürzter Server sendet keinen fail-Ping. HelloCron kennt das erwartete Intervall jedes Jobs und wartet eine zusätzliche Toleranzzeit, um normale Schwankungen abzufangen. Schließt sich dieses Fenster ohne Ping, bekommst du einen Verpasst-Alarm.
Beide Werte legst du pro Monitor selbst fest. Ein nächtliches Backup mit 15 Minuten Toleranzzeit verhält sich anders als ein Sync-Job, der alle 5 Minuten läuft, mit 60 Sekunden Toleranz.
Der hellocron.sh-Client umgibt deinen Befehl: Er sendet run, führt den Job aus, misst die Dauer, erfasst den Exit-Code und die letzten Zeilen von stderr und schließt dann mit complete oder fail ab. Du änderst ein Wort im Crontab, nicht dein Skript.
Läuft schon ein vollständiges Crontab? Der discover-Befehl liest es aus und erstellt für jeden gefundenen Job einen Monitor, mit dem Zeitplan direkt aus dem Cron-Ausdruck übernommen.
# beliebigen Job einbinden: Exit-Code, Dauer und stderr erfasst hellocron.sh run db-backup -- /opt/backup.sh # bestehendes Crontab als Monitore importieren hellocron.sh discover /etc/crontab
Ja. Alles, was eine HTTP-Anfrage senden kann, kann pingen: systemd-Timer, Kubernetes-CronJobs, Airflow-Tasks, GitHub Actions, Windows-Aufgabenplanung. HelloCron sieht nur die Pings, nicht den dahinterliegenden Scheduler.
Jeder Ping ist ein Event: run, complete, fail oder skip. Ein Job, der stündlich run und complete sendet, erzeugt etwa 1.440 Events pro Monat, sodass die 50.000 Events im Free-Plan Dutzende Jobs abdecken.
Die API beginnt, HTTP 402 zurückzugeben, und neue Pings werden nicht mehr angenommen, bis der Monat zurückgesetzt wird oder du upgradest. Nichts wird gelöscht; Dashboard und Historie bleiben die ganze Zeit verfügbar.
Registrieren, API-Schlüssel holen, curl in deinen Cron einfügen. Das war's.