我想找到过去一小时系统的平均负载。
我可以找到命令:uptime 07:05:05 up 1151 days, 20:06, 2 users, load average: 0.01, 0.10, 0.29
过去 1、5 和 15 分钟内运行队列中的平均作业数。
我希望在过去一小时内高于平均负载。谁能告诉这样做的方法?之后,我将使用 Java 显示输出
一个简单的解决方案是安装sysstat包。我不确定是否支持 Solaris,但可以在下载页面找到源代码,因此您可以尝试在目标发行版上编译它。
$ yum install sysstat
您执行的命令是sar -q
,它将显示您所执行的时间跨度的历史队列大小和平均负载。像这样:
05:53:13 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
05:53:14 AM 0 200 5.00 4.00 3.00 0
05:53:15 AM 0 200 5.00 4.00 3.00 0
...
其中ldavg-1
,ldavg-5
等分别是前 1 分钟和 5 分钟的负载平均值。
您还提到您希望自己显示数据。在这种情况下,您将需要使用sadf/var/log/sa
工具处理存储在目录中的二进制数据- 它可以生成您可以在 java 中使用的 JSON 或 XML。