发送重要警报到munin的其他邮件地址?

问题描述 投票:1回答:2

我正在使用资源监控工具Munin。 (版本1.4.6)

今天我启用了电子邮件提醒功能,以便在值过高时收到通知。

使用munin,可以设置两级警报。 (警告或严重)

我已经像这样配置了munin.conf文件:

contact.scs.command mail -s "Munin notification ${var:host}" [email protected]

[varnish;server01.domain.net]
  address server01.domain.net
  use_node_name yes
  cpu.iowait.warning 14
  cpu.iowait.critical 17
  cpu.contacts scs

当性能值超过定义的最大值时,将成功发送带有警报的邮件通知。 :-)

现在问我的问题:

是否可以将关键通知发送到与警告通知不同的邮件地址?

不幸的是我在网上找不到任何东西。

我已经试过了,但它对我不起作用:

contact.scs.command mail -s "Munin notification ${var:host}" [email protected]
contact.crit.command mail -s "Munin notification ${var:host}" [email protected]

[varnish;server01.domain.net]
  address server01.domain.net
  use_node_name yes
  cpu.iowait.warning 14
  cpu.iowait.critical 17
  cpu.contacts scs
  cpu.contacts.warning scs
  cpu.contacts.critical crit

感谢帮助!

notifications warnings alert munin
2个回答
0
投票

这是你的猜测。对于所有仅警告联系人:

contact.scs.command mail -s "Munin notification ${var:host}" [email protected]
contact.scs.always_send warning

对于所有关键的联系人:

contact.crit.command mail -s "Munin notification ${var:host}" [email protected]
contact.crit.always_send critical

对于任何警告和关键联系人:

contact.other.command mail -s "Munin notification ${var:host}" [email protected]
contact.other.always_send warning critical

0
投票

不幸的是,munin不支持这个,它的文档很差。但是可以通过解决方法来实现。我的情况下面有点复杂,我必须首先ssh到另一台机器,因为在我的情况下邮件不能直接从munin机器发送。但是,当然可以在不使用ssh的情况下简化它。

contact.email.command ssh [email protected] "cat > /tmp/muninmail.txt; bash -c \"if grep -q CRITICAL /tmp/muninmail.txt; then cat /tmp/muninmail.txt | mail -s 'Munin-notification for ${var:group} :: ${var:host}' [email protected]; fi\"

没有ssh,这样的事情应该这样做,但我没有测试过这种情况:

contact.email.command bash -c "cat > /tmp/muninmail.txt; if grep -q CRITICAL /tmp/muninmail.txt; then cat /tmp/muninmail.txt | mail -s 'Munin-notification for ${var:group} :: ${var:host}' [email protected]; fi"
© www.soinside.com 2019 - 2024. All rights reserved.