每 1 秒或 5 秒监控一次平均负载,如果高于例如 5,则采取一些措施

每 1 秒或 5 秒监控一次平均负载,如果高于例如 5,则采取一些措施

如何在不编写额外守护进程的情况下做到这一点?

PS:我不能使用 cron,因为我需要较短的时间间隔。

PPS Debian 6 x64

答案1

使用 Monit 作为轻量级系统监控工具。

这是文档。您将找到如何根据系统条件(如负载)发出警报和操作的示例。例如:

check system server.example.com
  if loadavg (1min) > 4       for 10 cycles then alert
  if loadavg (5min) > 3       for 10 cycles then alert
  if loadavg (15min) > 2      for 10 cycles then alert
  if memory usage > 75%       for 10 cycles then alert
  if cpu usage (user) > 70%   for 10 cycles then alert
  if cpu usage (system) > 50% for 10 cycles then alert
  if cpu usage (wait) > 50%   for 10 cycles then alert

其中“警报”是在不同的配置部分中定义的。

Monit 应该可以在 Debian 的 apt 中使用。是的,它需要额外安装和运行,但它相当轻量,而且比你在 shell 脚本中编写的任何东西都要好。

相关内容