top
并uptime
获取过去 1、5 和 15 分钟的服务器平均负载,但是有没有简单的方法可以获取昨天或其他任何一天的平均负载?
答案1
你可能想要使用在顶上为你的任务。
查看部分原始数据存储在其手册页中。
答案2
sar -q
在 redhat 上,sar 位于 sysstat 包中。不确定其他发行版是否如此。
附录。
对于今天以外的日子,您将需要指定包含统计数据的文件。
在 redhat 上,这些文件位于:
/var/log/sa
/var/log/sa/sa15
15 日的 sar 数据也是如此, /var/log/sa/sa23
23 日的 sar 数据也是如此,等等。
要查看 25 个的平均负载,请使用:
sar -q -f /var/log/sa/sa25
重新阅读您的问题后,您需要调整数据以获得一天的平均值。您可以使用 -H 和 -h 标志将输出更改为可能更易于解析/处理的内容。
答案3
内核本身并不负责计算这 3 个平均值。Nagios 可以捕获和存储任意时间范围内的数据,而且我认为可以计算平均值。