我有一台服务器,通过传输流量执行多项任务。
最近,服务器一直卡顿。系统阻塞时,它会重新启动 - 这让我无法获得有关阻塞病理的有用信息(这绝对不是剧烈崩溃)。
根据你的经验,哪种工具可以帮助你保存有关系统阻塞的有用数据。
这可能是内存消耗、“ps”、“top”或任何其他参数。
请注意,一个偶尔输出几个长命令(ps -a)的脚本可能会占用大量存储空间,并且很难分析。
答案1
安装 SAR,它默认每 10 分钟提供一次数据快照,但您可以使用 cron 作业更改信息的速率。
它将提供许多有用的数据,例如内存、负载 CPU 使用率和磁盘 I/O 统计数据。
答案2
您需要对系统最常见参数进行历史分析,我推荐 MUNIN,它通过网络提供最常见系统资源的图表,您可以持续监控以查看哪个进程/哪个服务阻塞了资源以及哪些资源。
之后我建议对系统日志文件进行 tail -f 检查,看看是什么导致了这个问题。
答案3
有时我觉得 SAR 有点不够用。我遇到过需要全面了解系统运行情况的情况。top、ps、vmstat、netstat、iostat、iotop 等命令就派上用场了。通常我会将这些命令的输出记录到一个文件中。现在,如果空间有限,有一项名为SeaLion
执行上述所有命令并将其存储到云中。您可以从浏览器访问这些数据。
另外,我想提一下其他服务,例如,,,Nagios
它们也会从您的机器收集统计信息,这在调试问题时可能会派上用场。Munin
New Relic
Server density