我怎样才能loggingCPU峰值?

我将运行一个自定义的守护进程,可能会激起服务器的CPU? 有没有办法logging他们的启动和运行时间的尖峰?

如果你正在运行linux或者其他unix版本,那么在许多发行版本中默认安装了sar 。 很多时候它在定义的时间间隔内从cron运行,但是您也可以使用指定的轮询间隔手动运行它

例如:

sar -u 1 0

这将永远运行一秒钟。 -u告诉它输出CPU使用率信息, 1是轮询之间的多less秒, 0是轮询多less次(永远是0)。

它也可以用-x参数观察特定的进程。 它也可以将其数据logging到文件中供以后查看。 Sar可以做很多事情,所以如果你想做更多的事情,请参考手册页。

使用任何监视系统(Cacti,Zabbix,Munin,…)监视守护程序的内存使用情况。

尝试使用仙人掌:

http://www.cacti.net/index.php

我会说,如果你有一堆服务器来监视,得到一个“公用事业服务器”,并花时间和安装munin(我使用),或仙人掌或zenoss或ganglia或任何你喜欢的。

但是,如果是一次性服务器,请使用sysstat套件中的sar。 通常它是从cron运行的。 在Debian系统中,您必须在/ etc / defaults / sysstat中启用它。 你可以用ksar来显示结果。