我正在运行一个稳定性测试,其中包含几个重要的过程,我希望能够单独监视这些过程(CPU,内存,IO等),我知道我可以使用TOP命令但是使用此命令将导致仅查看实时指标,现在是整体或平均值,我可以将其导出到图表中,看看它是如何随着时间推移的。我怎样才能做到这一点?
答案 0 :(得分:0)
您仍然可以使用top
,将单个实例的输出打印到文件,然后使用grep
隔离要查看的进程,然后使用awk
选择你想要的领域。
像
这样的东西top -n 1 -b > /tmp/log_top_running ; grep <process_name> /tmp/log_top_running | awk '{print $10}' >> <report_file>
将提取进程运行时间并将其附加到报告文件中。 -b
是为了避免文件中的转义字符,-n 1
在第一次刷新后终止top
。
这是你可以做的最基本的事情 - 你可以通过传递给top
旗帜来做更聪明的事情,只打印你想看的东西。
要使其定期执行,您可以在脚本中编写此命令并使用watch
命令,使用-n
选项设置以秒为单位的间隔。获得文件后,您可以绘制它。
希望它有所帮助。