我已将 Zabbix 配置为监控 Jboss 服务器日志中的错误并排除一些已知错误。
此设置有效,当日志文件中有新的“ERROR”条目时,Zabbix 会向我发送警报,但出现一个问题时,
有时我会收到同一事件的多个警报。
例如,我收到了 5 个带有相同时间戳“2012-06-25 07:55:56,864 ERROR”的警报。
重复警报数不是恒定的,有时我会收到 2 个,有时是 5 个或 11 个。
我检查了 GUI 中的监控 > 最新数据,发现没有重复的条目。
我的日志监控配置如下。
我使用的是最新版本的zabbix服务器(2.0)
商品配置:
- 描述:服务器错误监控。
- 钥匙:
log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip]
- 类型:Zabbix 代理(主动)
- 信息类型:日志
- 间隔:30
触发器配置:
- 描述:在服务器日志中发现错误。
- 表达:
(({SERVER Error Monitoring - PS:log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip].regexp("can not execute")})=0) & (({SERVER Error Monitoring - PS:log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip].regexp("Unexpected redirect")})=0)
- 事件生成:正常+多个TRUE事件
动作配置:
- 名称: 报警邮件
- 事件来源:触发器
- 启用升级:取消选中
- 默认主题/消息:默认
- 恢复消息:取消选中
- 动作条件:触发值=PROBLEM
- 动作操作:发送消息给用户“管理员”
答案1
我已经解决了这个问题。
出现此问题的原因是,我{ITEM.LASTVALUE}
在 Action 中使用了 ,这导致了此问题。我已将其更改为{ITEM.VALUE}
。这解决了该问题。
{ITEM.VALUE}
比 快{ITEM.LASTVALUE}
。
如果您想了解有关此修复的更多信息,请参阅Zabbix bug tracker中有详细的解释
答案2
阿伦,
您的项目表达式捕获了日志中发生的所有错误,
log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip]
而您的触发表达式会过滤掉所有“无法执行”和“意外重定向”并触发所有其他错误字符串。
(({SERVER Error Monitoring - PS:log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip].regexp("can not execute")})=0) & (({SERVER Error Monitoring - PS:log["/SERVER/jboss/jboss-5/server/ps/log/server.log","ERROR",UTF-8,200,skip].regexp("Unexpected redirect")})=0)
当选择“事件生成:正常 + 多个 TRUE 事件”时,您指示 Zabbix 为符合触发条件的每个日志字符串继续生成新事件。
所以那里的一切都配置正确,
你确定你没有其他具有捕获这些重复事件条件的活动触发器吗?
这种情况也可能发生在部分重复彼此条件的操作中,从而产生冗余警报,
但从你简单的操作条件来看,我预感到这里的情况并非如此。