2026 租用云 Mac 生产环境 OpenClaw 健康探测与就绪检查
在 香港、日本、韩国、新加坡或美国 租用 Mac mini M4 上 7×24 运行 OpenClaw 时,监听于 127.0.0.1:18789 的网关已成为生产基础设施的一部分。Kubernetes 团队早已区分 liveness 与 readiness;纯 macOS + launchd 的交付形态也需要同等纪律,只是没有 kubelet。本 2026 指南说明应抓取哪些信号、提供探测类型对照表、六步运行手册,以及既能避免静默失败又不会把值班拖垮的告警阈值。若故障跨越网络与进程层次,请结合 网关排障、结构化日志、Webhook 的 Nginx 反向代理 与 Tailscale 网关安全访问 一并阅读。
为什么“进程在跑”不算健康检查
launchd 可能仍以退出码 0 报告成功,而网关已卡死:TLS 上下文陈旧、模型供应商 DNS 抖动,或 ~/.openclaw 下配置写入不完整。优秀的探测应走与用户流量相同的代码路径——HTTP 处理、鉴权中间件、可选的下游模型探测——同时避免狂打计费 API。
- Liveness(存活)回答“要不要重启网关?”——成本低,建议每 60 秒。
- Readiness(就绪)回答“负载均衡该不该切流量?”——更严格,可包含依赖检查。
- Canary(金丝雀)每 15 分钟发送一条合成用户消息以捕获细微回归;务必单独预算 token。
值班周之前运维应画出的最小仪表盘
对在生产环境运行 Agent 的 MacXCode 客户,建议至少具备:
- 反向代理前置网关时,来自 nginx
$request_time的请求速率 + p95 延迟。 - 错误率——
5xx计数除以总量;在排除已知维护窗口后,若连续 5 分钟高于 2% 则告警。 - CPU 持续 > 85% 达 10 分钟——小规格实例常是热节流前兆;M4 很少热限流,但突发 embedding 仍会尖峰。
- 根 APFS 卷可用空间 < 12 GB——
~/.openclaw/logs下日志轮转在磁盘紧张时会停滞。
探测类型:各自证明什么
| 探测 | 证明 | 成本 / 风险 |
|---|---|---|
对 127.0.0.1:18789 的 TCP 连接 |
accept 循环仍存活 | 信号弱;无法发现鉴权失败 |
HTTP GET /health(路径依构建版本文档) |
HTTP 栈 + 配置加载 | 推荐的基线 liveness |
| 带鉴权的合成对话 | 模型路由 + 凭据 | 消耗 token;作为 canary 低频运行 |
| 磁盘 inode + 剩余空间 | 日志轮转健康 | 廉价的主机级护栏 |
六步运行手册:从零到可接 PagerDuty
- 基线——干净启动后捕获
openclaw gateway status输出并存入 git。 - 编写探测脚本——curl 使用
--fail,连接超时 3 秒;失败时非零退出。 - launchd plist——
StartInterval60;配置ThrottleInterval避免风暴;日志写入统一文件。 - 关联 ID——每次检查向日志写入 ISO8601 时间戳,便于与 nginx 交叉检索。
- 接线告警——连续三次失败才 pager;单次失败仅发 Slack。
- 演练日——每季度故意 kill 网关,对照 15 分钟 SLO 测量 MTTR。
curl -fsS --max-time 3 http://127.0.0.1:18789/health || exit 1
探测如何与 Nginx 和 Tailscale 组合
当 nginx 终结 TLS 时,对内网 URL 跑 liveness,以便把边缘误配与网关缺陷隔离。纯 tailnet 部署时,从 Tailscale 中打了 probe 标签的设备跑合成检查,避免 ACL 变更悄悄让监控失效。
减少噪音的告警阈值
| 条件 | 建议窗口 | 严重级别 |
|---|---|---|
| 连续 3 次探测失败 | 若间隔 60s 约 3 分钟 | 呼叫值班 |
| 内网一跳 p95 延迟 > 800 ms | 持续 10 分钟 | 警告工单 |
| Canary LLM 失败 | 1 次 | Slack + 自动开 bridge issue |
FAQ:macOS 云 Mac 上的探测
| 问题 | 回答 |
|---|---|
| 探测应以 root 运行吗? | 不要——使用与 ~/.openclaw 属主相同的服务用户,才能捕获权限回归。 |
| 次要观察者放在哪里? | 使用另一区域的 MacXCode 节点或现有可观测 VPC;小型见证机可对比 定价。 |
| 打开 debug 后日志暴涨怎么办? | 遵循 结构化日志 指引——仅在支持窗口内开 debug。 |
为何 Mac mini M4 裸金属仍有助于探测保真度
若主机因超售而抖动,合成检查毫无意义。裸金属 Mac mini M4 为 curl + JSON 解析提供稳定 CPU,为日志追加提供可预期 NVMe,并与开发环境网关所见的 Apple Silicon 行为一致。MacXCode 在 HK / JP / KR / SG / US 的区域布局让用户群体附近的观察者仍能保持相同的 SSH 应急入口,详见 帮助。
结论:把 OpenClaw 当作任意生产 API——定义 SLO,用探测证明,在营销承诺“永远在线”之前演练故障。金丝雀开始每周扑腾时,通过 定价 扩容。