我正在做一个研究项目,我们通常在服务器上开始工作,大约需要一两天的时间才能运行,然后我们回去看看结果。问题在于,在某些情况下,我们正在使服务器资源匮乏,并且由于某些作业失败,它正在影响我们的结果。
我想生成一份报告,我们可以回顾一下以确定服务器资源的使用情况,并将其与作业交叉引用。
我试过用 atop 做这个(使用它的 rawfile 格式)但是在不同的机器上读取这种格式有很多问题(即不同版本的 linux 或 atop 等)
所以我想知道是否有更优雅的解决方案?最终,我需要能够深入了解每个进程级别的资源消耗,并查看用于实例化进程的命令(如 htop 中的命令列。)
您可能可以从
看昨天系统大雅
以及
vmstat
这使您能够开始将问题缩小到小时。从那里您可以开始查看服务器日志以查看是否有错误。在日志上使用 grep 并查找您的进程名称和关键字,例如问题、错误。
您应该尝试一下
nmon
,您可以从 EPEL 存储库中获取它。您可以安排一个 cron 作业来创建每日报告,例如,这将在每天早上 7 点生成一份报告:
报告的大小各不相同,例如第一个来自测试服务器,第二个来自 Oracle 生产服务器:
然后,您可以通过多种方式绘制统计数据(输出为 csv)。