← Back to Skills Marketplace
yinsuso

服务器监控

by yinsuso · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
135
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install yinsuso-server-monitor
Description
监控服务器CPU、内存、磁盘、负载和网络资源,支持阈值告警和定时检查,无需额外安装,基于Linux原生命令。
README (SKILL.md)

Server Monitor — 服务器监控技能

描述

监控服务器核心资源(CPU、内存、磁盘、网络、负载),支持阈值告警和定时检查。基于 Linux 原生命令,无需额外安装。

触发场景

  • 用户要求"查看服务器状态"、"监控服务器"、"系统怎么样"
  • 定时检查服务器资源使用情况
  • 资源超阈值时主动告警

监控指标与命令

CPU 使用率

top -bn1 | grep "Cpu(s)" | awk '{print 100 - $8}'

或使用:

vmstat 1 2 | tail -1 | awk '{print 100 - $15}'

内存使用

free -m | awk '/Mem:/ {printf "已用 %sMB / 总计 %sMB (%.1f%%)\
", $3, $2, $3*100/$2}'

磁盘使用

df -h | grep -E '^/dev/' | awk '{printf "%s: 已用 %s/%s (%s)\
", $6, $3, $2, $5}'

系统负载

uptime | awk -F'load average:' '{print $2}' | xargs

返回值:1分钟、5分钟、15分钟平均负载

网络流量

cat /proc/net/dev | grep -E 'eth0|ens|enp' | awk '{printf "接收: %.1fMB | 发送: %.1fMB\
", $2/1024/1024, $10/1024/1024}'

磁盘 IO

iostat -x 1 1 2>/dev/null || echo "未安装sysstat"

一键全状态检查

echo "=== 服务器状态 ==="
echo ""
echo "📅 时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "🖥️  主机: $(hostname)"
echo "⏱️   运行: $(uptime -p 2>/dev/null || uptime | awk -F'up ' '{print $2}' | awk -F',' '{print $1}')"
echo ""
echo "💻 CPU: $(top -bn1 | grep 'Cpu(s)' | awk '{printf "%.1f%%", 100-$8}')"
echo "🧠 内存: $(free -m | awk '/Mem:/{printf "%dMB/%dMB (%.1f%%)", $3, $2, $3*100/$2}')"
echo "💾 磁盘: $(df -h / | awk 'NR==2{printf "%s/%s (%s)", $3, $2, $5}')"
echo "📊 负载: $(uptime | awk -F'load average:' '{print $2}' | xargs)"
echo "🌐 网络: $(cat /proc/net/dev | grep -E 'eth0|ens' | awk '{printf "↓%.1fMB ↑%.1fMB", $2/1024/1024, $10/1024/1024}')"
echo ""
echo "=== 占用前五进程 ==="
ps aux --sort=-%mem | head -6 | awk 'NR>1{printf "%-20s %5s %5s\
", $11, $4"%", $4"MB"}'

告警阈值配置

默认告警阈值:

  • CPU > 80% ⚠️
  • 内存 > 85% ⚠️
  • 磁盘 > 90% 🔴
  • 负载 > CPU核心数 × 2 ⚠️

发现超阈值时:

  1. 记录告警信息
  2. 如用户配置了通知渠道,发送告警消息
  3. 建议处理方案

定时监控

通过 cron 实现定时检查:

# 每15分钟检查一次,超阈值通知
*/15 * * * * /path/to/check.sh

或通过 heartbeat 检查: 将检查指令加入 HEARTBEAT.md

进程异常检测

查找高资源占用进程:

# CPU占用前10
ps aux --sort=-%cpu | head -11 | tail -10

# 内存占用前10
ps aux --sort=-%mem | head -11 | tail -10

# 僵尸进程
ps aux | awk '$8 ~ /Z/ {print}'

使用示例

用户: "看看服务器状态"

执行一键全状态检查命令,格式化返回结果。

用户: "CPU占用高吗"

执行CPU检查命令,分析结果。

用户: "磁盘还剩多少"

执行磁盘检查命令,返回各分区剩余空间。

注意事项

  • 所有命令均为只读,不影响系统运行
  • 需要基础 Linux 命令可用(top, free, df等)
  • 网络接口名可能因系统而异(eth0/ens/enp等),需根据实际调整
  • 高负载时可建议用户执行 htop 进一步分析需安装
  • 可配合 universal-notify 技能实现告警通知
Usage Guidance
这是一个说明型的本地监控技能: - 它只运行常见的只读 Linux 命令来收集系统指标;技能本身不需要密钥或安装外部代码。 - 在允许任何代理执行这些命令之前,请确认你信任代理的执行权限,因为命令会访问本机系统信息(hostname、/proc、ps 输出等)。 - 如果你要启用告警通知,检查通知渠道(universal-notify 或其他)会如何配置和存放凭据,避免在不清楚数据流向的情况下提供外部访问权限。 - 在将脚本加入 cron 前,先在终端手动运行一遍检查脚本,确认接口名(eth0/ens/enp)、iostat 是否存在、以及 check.sh 的实际路径和内容。 - 如果你希望限制自动执行,避免把检查脚本放入自动运行位置,或者仅在明确需要时手动触发。
Capability Analysis
Type: OpenClaw Skill Name: yinsuso-server-monitor Version: 1.0.0 The skill bundle provides standard server monitoring functionality using common Linux utilities (top, free, df, ps, uptime) to report CPU, memory, disk, and network usage. All commands in SKILL.md are read-only, lack obfuscation, and align strictly with the stated purpose of system health monitoring without any evidence of data exfiltration or malicious intent.
Capability Tags
crypto
Capability Assessment
Purpose & Capability
技能名称与描述(监控 CPU/内存/磁盘/网络/负载、阈值告警、定时检查)与 SKILL.md 中列出的命令和流程一致。它仅使用常见的本地命令(top、free、df、ps、uptime、/proc 等),未请求与目的无关的凭证或外部服务。
Instruction Scope
所有示例命令均为只读的系统状态查询,范围限于本机资源指标;这与技能声明一致。但文档提到“记录告警信息”和“发送告警消息(如用户配置)”,未说明告警记录与通知的具体位置或渠道。若与外部通知(如 universal-notify)集成,需要额外授权/凭据,安装前应确认通知目标与数据流向。
Install Mechanism
无安装规范、无代码文件——纯说明性技能(instruction-only),不会在宿主上写入或下载任何二进制,风险较低。SKILL.md 也对缺少 iostat 的情况做了降级处理。
Credentials
技能声明和运行说明中均不要求环境变量或凭据。唯一的潜在外部依赖是用户自行配置的告警/通知渠道;在那种情况下,相关凭据应由用户显式提供给对应通知工具,而非由该技能隐式要求。
Persistence & Privilege
技能没有设置 always:true,也不包含安装脚本或自修改行为;它只是运行命令并格式化输出。唯一需要注意的是:为定时检查而将脚本加入 cron 或 HEARTBEAT.md 会使检查定期执行——这属于用户主导的部署步骤,应由用户确认。
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install yinsuso-server-monitor
  3. After installation, invoke the skill by name or use /yinsuso-server-monitor
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
初始版本,支持CPU/内存/磁盘/网络/负载监控
Metadata
Slug yinsuso-server-monitor
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is 服务器监控?

监控服务器CPU、内存、磁盘、负载和网络资源,支持阈值告警和定时检查,无需额外安装,基于Linux原生命令。 It is an AI Agent Skill for Claude Code / OpenClaw, with 135 downloads so far.

How do I install 服务器监控?

Run "/install yinsuso-server-monitor" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is 服务器监控 free?

Yes, 服务器监控 is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does 服务器监控 support?

服务器监控 is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created 服务器监控?

It is built and maintained by yinsuso (@yinsuso); the current version is v1.0.0.

💬 Comments