Sensu 邮件程序不遵守事件设置

Sensu mailer not respecting occurrences setting

我正在使用 sensu-mailer 处理程序发送电子邮件警报。它工作正常,期望我无法让它在每次发生时都发送电子邮件。无论我给 occurrences 什么价值,它都不会改变

# config

"ping_website": {
      "notification": "getpostman.com HTTP port 80",
      "command": "/etc/sensu/plugins/check-http.rb -u <url>",
      "subscribers": [ "base" ],
      "standalone": true,
      "interval": 60,
      "occurrences": 1,
      "handlers": ["default", "mailer"]
    }

# log

{"timestamp":"2015-03-01T05:40:44.233827+0000","level":"info","message":"handler output","handler":{"type":"pipe","command":"ruby /etc/sensu/handlers/mailer.rb","name":"mailer"},"output":"only handling every 30 occurrences: localhost/ping_website\n"}

想通了。需要将 refresh 设置为不同的值。由于默认值为 1800 秒,因此不会为另外 30 次连续出现的错误发送另一个警报。将 refresh 设置为较小的数字可解决问题。

我的自定义处理程序遇到了问题,但后来仔细检查我的检查配置文件时,我遗漏了这些值。 @elssar 谢谢。

  "notification_occurrences": 1, 
    "refresh": 180, 
    "occurrences": 2, 

当我检查处理程序时,有些东西像

only handling every 10 occurrences

然后我手动触发处理程序 10 次,然后它的工作。 还有一些帮助表格文档。 已经回答但可能会帮助具有自定义处理程序的人。 https://docs.sensu.io/sensu-core/1.2/reference/events/#event-attributes

https://docs.sensu.io/sensu-enterprise/2.8/filters/handle-when/#handlewhen-属性