Fehlerbehebung bei Automatisierung¶
Verwenden Sie diese Seite bei Problemen mit dem Scheduler und der Zustellung (cron + heartbeat).
Befehlsleiter¶
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
Führen Sie dann die Automatisierungsprüfungen aus:
openclaw cron status
openclaw cron list
openclaw system heartbeat last
Cron wird nicht ausgelöst¶
openclaw cron status
openclaw cron list
openclaw cron runs --id <jobId> --limit 20
openclaw logs --follow
Gute Ausgabe sieht so aus:
cron statusmeldet aktiviert und einen zukünftigennextWakeAtMs.- Job ist aktiviert und hat einen gültigen Zeitplan/eine gültige Zeitzone.
cron runszeigtokoder einen expliziten Überspring-Grund.
Häufige Signaturen:
cron: scheduler disabled; jobs will not run automatically→ Cron in Konfiguration/Umgebungsvariablen deaktiviert.cron: timer tick failed→ Scheduler-Tick abgestürzt; umliegenden Stack-/Log-Kontext prüfen.reason: not-duein der Run-Ausgabe → manueller Lauf ohne--forceaufgerufen und Job ist noch nicht fällig.
Cron ausgelöst, aber keine Zustellung¶
openclaw cron runs --id <jobId> --limit 20
openclaw cron list
openclaw channels status --probe
openclaw logs --follow
Gute Ausgabe sieht so aus:
- Run-Status ist
ok. - Zustellmodus/Ziel sind für isolierte Jobs gesetzt.
- Kanalprobe meldet Zielkanal als verbunden.
Häufige Signaturen:
- Lauf erfolgreich, aber Zustellmodus ist
none→ es wird keine externe Nachricht erwartet. - Zustellziel fehlt/ist ungültig (
channel/to) → Lauf kann intern erfolgreich sein, überspringt aber ausgehende Zustellung. - Kanal-Auth-Fehler (
unauthorized,missing_scope,Forbidden) → Zustellung durch Kanal-Anmeldedaten/Berechtigungen blockiert.
Heartbeat unterdrückt oder übersprungen¶
openclaw system heartbeat last
openclaw logs --follow
openclaw config get agents.defaults.heartbeat
openclaw channels status --probe
Gute Ausgabe sieht so aus:
- Heartbeat aktiviert mit einem Intervall ungleich Null.
- Letztes Heartbeat-Ergebnis ist
ran(oder der Überspring-Grund ist bekannt).
Häufige Signaturen:
heartbeat skippedmitreason=quiet-hours→ außerhalb vonactiveHours.requests-in-flight→ Hauptspur beschäftigt; Heartbeat verzögert.empty-heartbeat-file→HEARTBEAT.mdexistiert, hat aber keinen umsetzbaren Inhalt.alerts-disabled→ Sichtbarkeitseinstellungen unterdrücken ausgehende Heartbeat-Nachrichten.
Zeitzone- und activeHours-Fallstricke¶
openclaw config get agents.defaults.heartbeat.activeHours
openclaw config get agents.defaults.heartbeat.activeHours.timezone
openclaw config get agents.defaults.userTimezone || echo "agents.defaults.userTimezone not set"
openclaw cron list
openclaw logs --follow
Schnellregeln:
Config path not found: agents.defaults.userTimezonebedeutet, dass der Schlüssel nicht gesetzt ist; Heartbeat fällt auf die Host-Zeitzone zurück (oderactiveHours.timezone, falls gesetzt).- Cron ohne
--tzverwendet die Zeitzone des Gateway-Hosts. - Heartbeat
activeHoursverwendet die konfigurierte Zeitzonenauflösung (user,localoder explizite IANA-TZ). - ISO-Zeitstempel ohne Zeitzone werden für Cron-
at-Zeitpläne als UTC behandelt.
Häufige Signaturen:
- Jobs laufen zur falschen Uhrzeit nach Änderungen der Host-Zeitzone.
- Heartbeat wird tagsüber immer übersprungen, weil
activeHours.timezonefalsch ist.
Verwandt: