监控单个应用程序在一段时间内的资源使用情况

监控单个应用程序在一段时间内的资源使用情况

我正在寻找一个可以监控应用程序资源使用情况(CPU 和 RAM)的实用程序。

我有一个第三方应用程序作为服务运行,一旦启动,它将定期接收请求。在这里,我想监控不同负载下的资源使用情况。

我搜索并找到了一些工具,例如 nmon、collectd、collectl、atop、monitorix 等,但我不确定如何使用它们。我已经安装了它们,它们显示了一些静态数据,但我不知道是否必须编写一些脚本或插件来获取我想要的内容。

我开始使用 Linux 才两个月,因此它对我来说有点令人生畏。

编辑: 我不想只看当前的使用情况。我需要检查历史数据并获取报告和图表。

谢谢

答案1

如果您安装/启动 collectl,它将开始每分钟收集一次进程统计信息/var/log/collectl。您可以根据需要将频率更改为更短/更长,但我不会将其设置为更长。您将看到每天午夜创建一个名为 raw.gz 的文件。

要查看历史过程数据,只需通过运行以下命令“回放”:

collectl -p /var/log/filename -sZ

这将显示每个样本的所有过程数据。另一方面,如果你运行

collectl -p /var/log/filename --top

它将显示每分钟按 CPU 排名前 10 的进程。我将留给您自己去弄清楚如何更改显示的进程数以及使用哪个字段对进程进行排序,但作为提示,请尝试

collectl --showtopopt

相关内容