zabbix监控日志文件

最近开发人员有一个需求,监控java程序的报错日志,如日志中包含“ERROR”关键字的信息,就邮件告警,以下是具体实现方法。

一、创建模板

以上是已经创建好的模板,名为“Template App Java logs”

创建应用集

二、创建监控项

键值示例:log[/app/wutongshu/monitorlog/error.log,ERROR,,,skip,]

说明:1、"/app/wutongshu/monitorlog/error.log"表示日志路径

2、"ERROR"表示匹配的关键字

3、"skip"为可选参数,表示跳过旧数据

参数介绍:

参数介绍:
file - 日志文件的全路径。
regexp - 过滤日志的正则表达式。
encoding - 字符编码,默认为英文单字节SBCS(Single-Byte Character Set)。
maxlines - agent每秒发送给server(或proxy)的数据的最大行数,这个参数会覆盖掉zabbix_agentd.conf配置文件里的'MaxLinesPerSecond'参数。
mode - 可填参数:all(默认),skip(跳过旧数据)。
output - 自定义格式化输出,默认输出regexp匹配的整行数据。转义字符'\0'表示regexp

三、创建触发器

表达式:{Template App Java logs:log[/app/wutongshu/monitorlog/error.log,ERROR,,,skip,].str(ERROR)}=1  and  {Template App Java logs:log[/app/wutongshu/monitorlog/error.log,ERROR,,,skip,].nodata(60)}=0

拆开解析:

{Template App Java logs:log[/app/wutongshu/monitorlog/error.log,ERROR,,,skip,].str(ERROR)}=1表示如果匹配到“ERROR”关键字,表达式为真。

{Template App Java logs:log[/app/wutongshu/monitorlog/error.log,ERROR,,,skip,].nodata(60)}=0表示60秒内有数据产生则表达式为真,即60秒内如果没有新数据了,则表达式为假。

and表示同时满足两个条件,触发器才会触发。

四、验证

告警邮件如下:

 

转载于:https://www.cnblogs.com/Eivll0m/p/6606452.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值