Monit 运行执行操作过于频繁

Monit 运行执行操作过于频繁

我编写了一个脚本,用于向我发送短信通知。我在 monit 测试中使用 exec 操作进行调用。它有效,但我被消息淹没了。如果检查失败,是否有办法抑制发送后续消息,直到检查成功?

这是监控配置文件:

检查系统 my_host
    如果 loadavg (1min) > 3 则发出警报
    如果 loadavg (1min) > 3,则以 uid nobody 和 gid sms 为参数执行“/usr/local/sms_notifier/sms_notifier.php 所有 cpu 平均负载超过 3”
    如果 loadavg (5min) > 2 则发出警报
    如果内存使用率 > 90% 则发出警报
    如果内存使用率 > 90%,则执行“/usr/local/sms_notifier/sms_notifier.php 所有内存使用率超过 90%”作为 uid nobody 和 gid sms
    如果 CPU 使用率(用户)> 70% 则发出警报
    如果 CPU 使用率(系统)> 30%,则发出警报
    如果 CPU 使用率(等待)> 30% 则发出警报

答案1

您需要在配置中添加“循环”。

check system localhost
    if loadavg (15min) > 8 for 10 cycles then alert

请参阅 Monit 服务测试文档

相关内容