我使用monit来监控服务的状态,当服务停止时,我想以相同的格式向多个收件人发送警报电子邮件。 这是我的monit配置的一部分:
set mail-format { from: no-reply@gmail.com }
check host hostA with address hostA
alert userA@gmail.com
MAIL-FORMAT { # use local format
subject: redis is down on hostA
message: redis is down on hostA on port 6379
Yours sincerely,
monit
}
alert userB@gmail.com
MAIL-FORMAT { # use local format
subject: redis is down on hostA
message: redis is down on hostA on port 6379
Yours sincerely,
monit
}
if failed port 6379 retry 3 then exec "/monit/scripts/myscripts.sh"
它有效,但有一些多余的东西(例如2个用户的相同邮件格式) 。我将在同一个配置文件中使用多种电子邮件格式。 剂量monit支持多个收件人使用相同且只有一种本地电子邮件格式?
答案 0 :(得分:2)
来自官方文件:
如果要将警报消息发送到更多电子邮件地址,请添加一组 提醒'电子邮件'每个地址的陈述。
在此之后,以下配置应该有效:
set mail-format { from: no-reply@gmail.com }
check host hostA with address hostA
alert userA@gmail.com
alert userB@gmail.com
MAIL-FORMAT { # use local format
subject: redis is down on hostA
message: redis is down on hostA on port 6379
Yours sincerely,
monit
}
此致
修改强>
文档没有说明,但元素的位置可能在这里发挥作用。尝试在邮件格式声明后定义警报地址。另外,请注意您在代码中使用两个邮件格式声明 - 如果没有必要,请尝试仅使用一个(后者)。
set mail-format {
from: monit@foo.bar
reply-to: support@domain.com
subject: $SERVICE $EVENT at $DATE
message: Monit $ACTION $SERVICE at $DATE on $HOST: $DESCRIPTION.
Yours sincerely,
monit
}
alert userA@gmail.com
alert userB@gmail.com