跨平臺系統監控工具,自動檢測作業系統型別,支援 Linux 和 Windows,用於監控伺服器硬碟、記憶體、CPU 使用情況,記錄歷史快照,支援變化趨勢對比和異常預警。
🎯 本技能特別適合定時任務使用,推薦頻率:
配置檔案按優先順序查詢:
$SYSTEM_MONITOR_CONFIG~/.openclaw/skills/config/skill-system-monitor/config.json ⭐ 推薦~/.openclaw/skills/skill-system-monitor/config.json推薦:使用技能配置目錄(#2),獨立於技能安裝目錄,解除安裝重灌不會丟失配置。
1. 複製示例配置:
mkdir -p ~/.openclaw/skills/config/skill-system-monitor
cp ~/.openclaw/skills/skill-system-monitor/config.example.json ~/.openclaw/skills/config/skill-system-monitor/config.json
2. 編輯配置:
nano ~/.openclaw/skills/config/skill-system-monitor/config.json
{ "alerts": { "disk": { "warning": 70, // 硬碟警告閾值 (%) "critical": 85 // 硬碟危險閾值 (%) }, "memory": { "warning": 70, // 記憶體警告閾值 (%) "critical": 85 // 記憶體危險閾值 (%) }, "cpu": { "warning": 1, // CPU 負載警告 (倍核心數) "critical": 2 // CPU 負載危險 (倍核心數) } }, "monitor": { "disk": true, // 是否監控硬碟 "memory": true, // 是否監控記憶體 "swap": true, // 是否監控 Swap "cpu": true, // 是否監控 CPU "uptime": true, // 是否顯示執行時間 "network": true, // 是否監控網路流量 "disk_io": true, // 是否監控磁碟 I/O "docker": true, // 是否監控 Docker "services": true, // 是否監控關鍵服務 "top_processes": 5 // TOP 程序數量 } }本技能來自小蔥技能站7w4.net。
如果不需要某些監控項,可以設定為 false:
{
"monitor": {
"disk_io": false, // 不監控磁碟 I/O
"docker": false, // 不監控 Docker
"services": false // 不監控服務狀態
}
}
服務監控使用 systemd,如需自定義,可在指令碼中修改 check_service 函式。
根據伺服器配置調整閾值:
{
"alerts": {
"disk": {
"warning": 80, // 硬碟 80% 才警告
"critical": 90 // 硬碟 90% 才危險
},
"memory": {
"warning": 80,
"critical": 90
}
}
}
直接執行監控指令碼,獲取當前系統狀態:
# Linux / macOS(自動檢測)
bash /path/to/skill-system-monitor/scripts/monitor.sh
# Windows (PowerShell)
powershell -ExecutionPolicy Bypass -File scripts\monitor-windows.ps1
適用場景:
通過 OpenClaw cron 配置定時監控,自動檢測並報告:
{
"name": "系統監控(每6小時)",
"schedule": { "kind": "every", "everyMs": 21600000 },
"payload": {
"kind": "systemEvent",
"text": "系統監控檢查:執行監控指令碼,報告系統狀態,如有異常立即預警。"
},
"sessionTarget": "main"
}
適用場景:
檢視資源使用趨勢變化:
bash scripts/compare.sh
輸出示例:
📊 系統監控報告
==================
主機: wezn
時間: 2026-03-14 20:57:50
執行時間: up 1 day, 9 hours, 55 minutes
💾 硬碟狀態
總容量: 69G | 已用: 45G (68%) | 可用: 22G
狀態: ✅正常
🧠 記憶體狀態
總記憶體: 4G | 已用: 2G (50%) | 可用: 2G
Swap: 1G/2G
狀態: ✅正常
⚙️ CPU 負載 (4核)
1分鐘: 0.01 | 5分鐘: 0.03 | 15分鐘: 0.00
狀態: ✅正常
🌐 網路流量
接收: 360.2 MB | 傳送: 385.9 MB
💿 磁碟 I/O
讀: 0/s, 寫: 0/s, 利用率: 0.0%
🐳 Docker 容器
執行: 0, 停止: 3
🔧 關鍵服務
MongoDB: ✅ | MySQL: ✅ | PostgreSQL: ✅
Docker: ✅ | Nginx: ✅ | OpenClaw: ✅
🔴 資源佔用 TOP 5 (記憶體)
1. clawdbot-gateway - 1122M (30.1%)
2. node (fund) - 129M (3.4%)
3. mongod - 103M (2.7%)
...
bash scripts/compare.sh
輸出示例:
📈 變化趨勢對比
==================
對比時間: 2026-03-14 14:00 → 2026-03-14 20:48
💾 硬碟: 71% → 68% (-3%)
🧠 記憶體: 55% → 49% (-6%)
# 列出所有歷史記錄
ls history/
# 檢視特定記錄
cat history/2026-03-14_20-48.log
skill-system-monitor/
├── SKILL.md # 技能說明文件
├── scripts/
│ ├── monitor.sh # 主監控指令碼(自動檢測 OS)
│ ├── monitor-linux.sh # Linux 監控指令碼
│ ├── monitor-windows.ps1 # Windows 監控指令碼 (PowerShell)
│ └── compare.sh # 對比指令碼(分析變化趨勢)
└── history/ # 歷史記錄目錄
├── YYYY-MM-DD_HH-MM.json # JSON 格式(用於對比)
└── YYYY-MM-DD_HH-MM.log # 文本格式(人類可讀)
使用 cron 工具配置定時監控任務:
{
"name": "系統監控(每6小時)",
"schedule": { "kind": "every", "everyMs": 21600000 },
"payload": {
"kind": "systemEvent",
"text": "系統監控檢查:請執行監控指令碼,檢查系統健康狀態,如有異常立即報告。"
},
"sessionTarget": "main"
}
每 6 小時監控(推薦):
{
"name": "系統健康檢查",
"schedule": { "kind": "every", "everyMs": 21600000 },
"payload": {
"kind": "systemEvent",
"text": "執行系統監控:執行 bash /home/app/.openclaw/skills/skill-system-monitor/scripts/monitor.sh,檢查硬碟、記憶體、CPU、服務狀態,如有異常立即預警。"
},
"sessionTarget": "main"
}
每天早上 9 點監控:
{
"name": "每日系統報告",
"schedule": { "kind": "cron", "expr": "0 9 * * *", "tz": "Asia/Shanghai" },
"payload": {
"kind": "systemEvent",
"text": "每日系統報告:執行監控指令碼,生成系統狀態報告。"
},
"sessionTarget": "main"
}
當監控發現異常時,會在報告中顯示 ⚠️ 預警資訊:
預警級別:
/proc 檔案系統和執行 df, free 等命令bc(必需,用於 CPU 狀態計算)、iostat(可選,磁碟 I/O)apt install bc sysstat -y(Debian/Ubuntu)| 平臺 | 支援狀態 | 指令碼檔案 |
|---|---|---|
| Linux (Ubuntu/Debian) | ✅ 完全支援 | monitor-linux.sh |
| Linux (CentOS/RHEL) | ✅ 完全支援 | monitor-linux.sh |
| Linux (Alpine) | ✅ 完全支援 | monitor-linux.sh |
| macOS | ⚠️ 部分支援 | monitor-linux.sh |
| Windows 10/11 | ✅ 完全支援 | monitor-windows.ps1 |
| Windows Server | ✅ 完全支援 | monitor-windows.ps1 |
| WSL | ✅ 完全支援 | monitor-linux.sh |
這個 Skill 監控功能比較全面,文件清晰易讀,配置方式也比較靈活。但實際使用時可能發現 macOS 和 Windows 使用者暫時用不了,Linux 使用者也可能在某些網路環境下無法正確獲取網路流量資料。總體來說質量中規中矩,功能完整度還有提升空間。