是否有允许记录内存使用情况的工具?

tsh*_*ang 24 memory monitoring

我想监视进程的内存使用情况,并且希望记录这些数据。有这样的工具吗?

小智 21

偶尔需要时,我会这样做:

$ top -d 1 -b |grep <process> >>somefile
Run Code Online (Sandbox Code Playgroud)

这不是一个优雅的解决方案,但如果您想要快速的粗略值来验证您的假设,就可以完成工作。

  • 我认为它_is_ 优雅在于它的简单性。您可能想要执行 `grep --line-buffered &lt;process&gt; &gt;&gt;somefile` 来强制 grep 输出每一行而不缓冲 (2认同)

小智 9

我已经写了一个脚本来做到这一点。它基本上ps以特定的时间间隔进行采样,以建立特定过程的配置文件。该进程可以由监控工具本身启动,也可以是一个独立的进程(由 pid 或命令模式指定)。


Chr*_*ian 7

sar( System Activity Reporter ) 来自sysstat包是你的朋友,以防万一。

另一种方法是结合历史数据进行监控,例如 Munin、pnp4nagios、rrdtools、...

  • sysstat 包中的`pidstat` 命令也提供了一个相当不错的界面,用于报告单个进程的统计信息。 (3认同)
  • 但是`sar`可以只关注一个过程吗?大多数情况下它似乎作为一个整体来监控系统 (2认同)