Zabbix监控日志方法分享

场景:所有数据库的日志统一写入到某台服务器的某个文件上,通过zabbix去监控该文件,进行关键字匹配告警
一、日志增量写入日志文件
1、通过zabbix自带的内置键值log进行监控,信息类型是 zabbix客户端(主动式),只能被动接收客户端发送过来的信息
Zabbix监控日志方法分享

log用法说明:
log这个key的格式是这样的:log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>],各项意思如下:

  1. file:文件名,写绝对路径;
  2. regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以,例如我想检索带ERROR关键词的记录;
  3. encoding:编码相关,GB2312可适配中文或留空亦可;
  4. maxlines:一次性最多提交多少行,这个参数覆盖配置文件zabbxi_agentd.conf中的’MaxLinesPerSecond’
  5. mode:默认是all,也可以是skip,skip会跳过老数据;
  6. output:输出给zabbix server的数据。可以是\1、\2一直\9,\1表示第一个正则表达式匹配出得内容,\2表示第二个正则表达式匹配错的内容
    2、配置触发器,使用str参数,匹配到关键字进行告警
    注:事件生成模式建议选用 多重,且允许手动进行事件关闭
    Zabbix监控日志方法分享
    Zabbix监控日志方法分享

二、日志替换方式写入日志文件
1、通过zabbix自带的内置键值system.run进行监控,信息类型是 zabbix客户端(被动式),可主动发请求立即获取数据
Zabbix监控日志方法分享
system.run[command,<mode>]命令是agent自带的,使zabbix server可远程在agent机器上执行任意命令。
注:如果为了方便把agent启动用户设置为root的话(AllowRoot=1)非常危险
告警配置方法请参考增量告警配置

猜你喜欢

转载自blog.51cto.com/14483703/2557512