Server Guardian
Overview
OpenClaw 服务器的"守护神",负责检测、诊断和自动修复服务器异常。
核心能力:
- 健康检查 — 5 维度全面诊断(CPU / 内存 / 磁盘 / 进程 / 日志)
- 自动恢复 — 根据诊断结果执行对应修复,无需人工干预
- 预防性维护 — 日志整理、OOM 检查、配置优化
Quick Start
遇到服务器异常时,直接说:
- "执行健康检查"
- "检查服务器状态"
- "Gateway 挂了,帮我看看"
- "服务器好卡,诊断一下"
Workflow
发现异常
↓
执行 health_check.sh(健康检查)
↓
┌─ OK → 正常,无需操作
├─ WARN → 关注,可选执行 auto_recover.sh
└─ CRITICAL → 立即执行 auto_recover.sh full
Health Check
运行诊断脚本(无需参数):
bash /root/.openclaw/workspace/skills/server-guardian/scripts/health_check.sh
检查 5 大维度:
| 维度 | 检查内容 | 告警阈值 |
|---|---|---|
| 系统 | CPU 负载 | > 2×核心数 |
| 系统 | 内存使用率 | > 90% |
| 系统 | 磁盘使用率 | > 90% |
| 进程 | Gateway 存活 | 进程消失 |
| 进程 | OpenClaw 进程数 | 进程消失 |
| 网络 | Gateway API 端口 | 端口不通 |
| 日志 | ERROR/FATAL 关键词 | 任意 1 个 |
| 系统 | 崩溃日志(journalctl) | 最近 1h 有记录 |
退出码:
0= 正常1= 警告(建议关注)2= 严重(立即处理)
Auto Recovery
自动恢复脚本,支持多种操作:
bash /root/.openclaw/workspace/skills/server-guardian/scripts/auto_recover.sh <action>
| action | 说明 |
|---|---|
check |
执行健康检查(同上) |
restart |
仅重启 Gateway |
full |
推荐 完整恢复流程(整理日志→检查OOM→清理内存→重启Gateway→验证) |
mem |
清理内存缓存 |
procs |
查找并处理高内存进程 |
logs |
压缩大日志 + 清理 30 天+旧日志 |
disk |
清理磁盘空间(npm/pnpm 缓存) |
oom |
检查 OOM Killer 记录 |
optimize |
输出 Gateway 配置优化建议 |
menu |
交互式菜单 |
推荐使用 full,一次性完成完整恢复。
OOM Killer 检测
内存耗尽时系统会触发 OOM Killer 自动杀掉进程。若检测到 OOM:
表现:
- Bot 进程突然消失
dmesg | grep killed有输出- Gateway 日志无错误但进程没了
处理建议:
- 增加 SWAP 空间
- 在
gateway.yml中添加内存限制 - 使用
auto_recover.sh full重启恢复
Gateway 重启
# 标准重启(推荐)
openclaw gateway restart
# 强制启动
openclaw gateway start
# 查看状态
openclaw gateway status
重启后等待 5-8 秒再验证是否成功。
