OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  uptime-monitor:24/7 全天候 OpenClaw 在线状态监控器

uptime-monitor:24/7 全天候 OpenClaw 在线状态监控器

 
  logging ·  2026-02-15 22:18:45 · 3 次点击  · 0 条评论  

名称: uptime-monitor
描述: 24/7 OpenClaw 在线状态监控器。每 5 分钟通过 cron 执行 ping 检测 → 若服务下线则写入 dead.json,若连续在线 7 天(168 小时)则写入 uptime.json。适用于设置持久化监控(cron 配置、连续在线追踪、状态文件生成)。


在线状态监控器

静默 24/7 哨兵:追踪 OpenClaw/Gateway 在线状态 → 失败时写入 dead.json,连续在线 7 天时写入 uptime.json。文件位于 workspace/uptime/ 目录。

快速设置(一次性)

# 安装 cron(每 5 分钟执行一次检测)
📊 cron add uptime-5m '{"kind":"every","everyMs":300000}' '{"kind":"systemEvent","text":"UPTIME CHECK 👻"}' --sessionTarget main

# 查看状态与日志
📊 cron list
📊 cron runs uptime-5m

工作流程(自动触发于 "UPTIME CHECK" 事件)

  1. 检测:通过 📊 session_statusopenclaw gateway status(经由 exec 执行)进行 ping 检测。
  2. 成功:更新 uptime/streak.json(小时数增加 5/60)。若累计时长 ≥168 小时 → 写入 uptime/uptime.json
  3. 失败:写入 uptime/dead.json,内容为 {ts, downtime_start: now}。
  4. 目录:自动创建 uptime/ 目录。

连续在线重置:检测失败时 → 连续在线时长归零。

文件说明(位于 workspace/uptime/)

  • streak.json{"streak_hours": 24.5, "last_ping": 1738746800000}(记录当前连续在线时长与最后一次检测时间戳)
  • uptime.json{"streak_hours": 168.1, "verified": true, "end_ts": 1738746800000}(达到 7 天以上连续在线时生成)
  • dead.json{"ts": 1738746800000, "downtime_start": 1738746800000}(服务下线时记录时间戳与故障开始时间)

边界情况处理

  • 首次运行:连续在线时长初始化为 0。
  • Cron 任务遗漏:连续在线时长保持原状(避免误报故障)。
  • 手动触发:可通过 message "UPTIME CHECK 👻" 命令手动触发检测流程。

无告警机制,无外部依赖。纯文件操作。适用于生产环境长期运行。

脚本(可选执行)

scripts/uptime-check.js:独立的 Node.js 检测脚本(可用于手动执行或由 cron 生成进程调用)。

生产环境推荐:配置 Cron 任务 → 静默永久运行。

3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor