Foglight的Alarm Rule中有一类是 Event Driven事件驱动,可以用于将Foglight产生的报警统一发邮件,发短信,备份保存或转发到其他系统中。
在使用该类报警规则时,会遇到发送两次报警问题,例如,假设我们创建一个Ping 某台网络设备的监控,当ping 不通时,产生一个常用的多级别报警,这时也将触发Event Driven 报警规则,这是符合我们要求的。
接着,如果下一次ping通时,该多级报警就会自动Clear,这是也将触发Event Driven,产生一条与上次完全相同的警报。这不是我们所需要的。
其原因是:对于Event Driven 报警规则,当一个对象的警报状态发生变化时,就会触发一次Event Driven报警, 这类改变包括警报的触发,清除,确认等。
因此,需要在Condition中,进行判断,例如,增加如下代码:
if(@event.get("change/value") == 0) {
<your code>
}
return false
本文介绍Foglight中AlarmRule的EventDriven类型如何避免在对象报警状态变化时发送重复报警的问题。通过具体示例展示了如何在条件判断中加入代码逻辑来解决这一常见问题。
9308

被折叠的 条评论
为什么被折叠?



