核心功能
Gateway Watchdog 是面向 OpenClaw 网关的监控与告警解决方案,采用 Discord 优先的通知策略,兼顾低噪音与快速响应。其核心能力包括:健康状态轮询、多类故障检测、状态机驱动的告警去重、以及可选的自动恢复策略。
健康检查机制
监控脚本通过 openclaw gateway status --json 与 openclaw health --json 双重验证,检测五类故障:运行时停止、RPC 探针失败、健康检查不可达、认证不匹配及配置无效。故障阈值与冷却窗口可通过环境变量调节,默认 2 次失败触发告警,300 秒冷却期防止通知泛滥。
隔离架构设计
所有监控数据隔离存放于 ~/.openclaw/watchdogs/gateway-discord/,不修改核心 openclaw.json 配置。默认只读监控模式(GW_WATCHDOG_ENABLE_RESTART=0)确保安全性,自动重启需显式启用且受限于最大重试次数。
部署灵活性
支持三种运行模式:手动执行、macOS LaunchAgent 后台服务(通过 install-launchd.sh 安装)、以及 OpenClaw 内置 cron 调度。Discord 通知支持 Webhook 和 Bot Token 双通道,优先使用 Webhook。
审计与回滚
自动生成状态快照(state.json)、历史备份与事件日志(events.jsonl),支持故障追溯与手动回滚。
显著优点
- 零侵入设计:不改动 OpenClaw 核心文件,卸载干净
- 智能去重:冷却机制与状态机有效抑制告警风暴
- 渐进式恢复:可选自动重启策略,边界清晰、风险可控
- 多模式部署:适应开发调试、生产监控、定时巡检等场景
潜在局限
- 平台限制:LaunchAgent 模式仅支持 macOS,Linux 需改用 cron 或 systemd
- 依赖前置:需预装 OpenClaw CLI 与有效 Discord 凭证
- 通知单通道:仅支持 Discord,未内建邮件/Slack/PagerDuty 等企业级集成
- 无可视化界面:纯命令行与日志驱动,缺乏仪表盘
适合人群
- 运行 OpenClaw 网关的开发者或运维人员
- 需要低成本网关监控的中小团队
- 熟悉 shell 环境、偏好轻量级工具的技术用户
常规风险
- 凭证泄露:Discord Token 或 Webhook URL 以环境变量传递,需确保 shell 历史与进程列表安全
- 重启副作用:启用自动恢复后,频繁重启可能掩盖深层故障,建议配合日志分析使用
- 单点依赖:监控本身依赖 OpenClaw CLI,若 CLI 异常则监控失效
- 磁盘增长:事件日志与备份需定期清理,长期运行可能占用空间