Pag-troubleshoot ng automation¶
Gamitin ang pahinang ito para sa mga isyu sa scheduler at delivery (cron + heartbeat).
Hagdanan ng mga Utos¶
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
Pagkatapos ay patakbuhin ang mga automation check:
openclaw cron status
openclaw cron list
openclaw system heartbeat last
Hindi nagpapaputok ang cron¶
openclaw cron status
openclaw cron list
openclaw cron runs --id <jobId> --limit 20
openclaw logs --follow
Ganito ang hitsura ng magandang output:
- Ang
cron statusay nag-uulat na enabled at may hinaharap nanextWakeAtMs. - Enabled ang job at may wastong iskedyul/timezone.
- Ipinapakita ng
cron runsangoko isang hayagang dahilan ng pag-skip.
Mga karaniwang signature:
cron: scheduler disabled; jobs will not run automatically→ naka-disable ang cron sa config/env.cron: timer tick failed→ nag-crash ang scheduler tick; siyasatin ang kalapit na stack/log context.reason: not-duesa run output → tinawag ang manual run nang walang--forceat hindi pa due ang job.
Nagpaputok ang cron pero walang delivery¶
openclaw cron runs --id <jobId> --limit 20
openclaw cron list
openclaw channels status --probe
openclaw logs --follow
Ganito ang hitsura ng magandang output:
- Ang status ng run ay
ok. - Nakakabit ang delivery mode/target para sa mga isolated job.
- Ang channel probe ay nag-uulat na konektado ang target channel.
Mga karaniwang signature:
- Matagumpay ang run pero ang delivery mode ay
none→ walang inaasahang external na mensahe. - Nawawala o invalid ang delivery target (
channel/to) → maaaring magtagumpay ang run sa loob ngunit laktawan ang outbound. - Mga error sa auth ng channel (
unauthorized,missing_scope,Forbidden) → naharang ang delivery dahil sa credentials/permissions ng channel.
Pinigil o nilaktawan ang heartbeat¶
openclaw system heartbeat last
openclaw logs --follow
openclaw config get agents.defaults.heartbeat
openclaw channels status --probe
Ganito ang hitsura ng magandang output:
- Enabled ang heartbeat na may hindi zero na interval.
- Ang huling resulta ng heartbeat ay
ran(o nauunawaan ang dahilan ng pag-skip).
Mga karaniwang signature:
heartbeat skippedna mayreason=quiet-hours→ nasa labas ngactiveHours.requests-in-flight→ abala ang main lane; ipinagpaliban ang heartbeat.empty-heartbeat-file→ may umiiral naHEARTBEAT.mdpero walang actionable na nilalaman.alerts-disabled→ pinipigilan ng mga setting ng visibility ang outbound na mga mensahe ng heartbeat.
Mga gotcha sa timezone at activeHours¶
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
Mga mabilis na tuntunin:
- Ang
Config path not found: agents.defaults.userTimezoneay nangangahulugang unset ang key; babagsak ang heartbeat sa timezone ng host (oactiveHours.timezonekung naka-set). - Ang cron na walang
--tzay gumagamit ng timezone ng host ng gateway. - Ang heartbeat na
activeHoursay gumagamit ng naka-configure na resolusyon ng timezone (user,local, o hayagang IANA tz). - Ang mga ISO timestamp na walang timezone ay itinuturing na UTC para sa mga iskedyul ng cron na
at.
Mga karaniwang signature:
- Tumatakbo ang mga job sa maling wall-clock time pagkatapos magbago ang timezone ng host.
- Palaging nilalaktawan ang heartbeat sa oras ng araw ninyo dahil mali ang
activeHours.timezone.
Kaugnay: