--- name: edge-observability description: edge_collector 运行观测与资源诊断规范。用于排查边缘主机或云服务器 CPU 高、内存占用、磁盘空间、/tmp 清理、进程数量、jq/python/agent 异常、服务日志、端口监听和系统负载时,按只读证据链输出分析结论。 --- # edge_collector 运行观测 ## 适用场景 - CPU 占用高。 - 内存比其他主机高。 - `/tmp` 或工程目录占用大。 - `jq`、Python、agent 进程很多。 - 服务频繁重启。 - 网关在线状态异常。 - 前端或云端接口偶发失败。 ## 排查顺序 1. 系统概况。 2. CPU 和进程。 3. 内存。 4. 磁盘。 5. systemd 服务。 6. 应用日志。 7. 网络端口。 8. 与对照主机比较。 ## 常用命令 系统: ```bash uptime free -h df -h uname -a date ``` CPU/进程: ```bash ps -eo pid,ppid,user,stat,pcpu,pmem,rss,etime,cmd --sort=-pcpu | head -30 ps -eo pid,ppid,user,stat,pcpu,pmem,rss,etime,cmd --sort=-rss | head -30 ``` 进程树: ```bash pstree -ap ``` 磁盘: ```bash du -h --max-depth=1 /home/cat 2>/dev/null | sort -h du -h --max-depth=1 /tmp 2>/dev/null | sort -h ``` 服务: ```bash systemctl status edge --no-pager journalctl -u edge --since "30 min ago" --no-pager systemctl list-units --type=service --state=running ``` 端口: ```bash ss -lntp ``` ## 分析规则 - 短时尖峰和持续高占用分开判断。 - 先找父进程,再判断是脚本循环、服务重启还是用户命令。 - 内存分析区分 RSS、缓存和可用内存。 - 磁盘清理只给建议,删除必须等用户确认。 - 与 119.45.4.75 或其他主机对比时,列出相同指标。 ## 高风险操作 以下操作必须用户明确同意: - 删除文件或目录。 - kill 进程。 - 重启服务。 - 清理日志。 - apt 安装诊断工具。 ## 报告格式 ```text 结论: 证据: - CPU: - 内存: - 磁盘: - 进程: - 日志: 判断: 建议: ``` ## 当前项目常见根因 - shell + `jq` 高频轮询导致短时 CPU 尖峰。 - 未插 SIM/设备缺失导致 4G 脚本重复探测。 - 前端构建产物或代码仓库占用较大。 - `/tmp` 离线安装包、构建缓存未清理。 - 独立 agent 异常退出后被 systemd 频繁拉起。