zabbix监控日志

zabbix监控日志

最主要的是监控日志文件中有没有某个字符串的表达式,对应日志轮转与否,zabbix都支持。

在配置Item的时候,Type选择Zabbix agent (active),这里主要需要配置的是Key。下面是监控日志的两种key——log和logtr。

log[/path/to/some/file,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

logtr[/path/to/some/filename_format,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

◆ regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以,例如我想检索带ERROR关键词的记录

◆ encoding:编码相关,留空即可

◆ maxlines:一次性最多提交多少行,这个参数覆盖配置文件zabbxi_agentd.conf中的'MaxLinesPerSecond',我们也可以留空

◆ mode:默认是all,也可以是skip,skip会跳过老数据

◆ output:输出给zabbix server的数据。可以是\1、\2一直\9,\1表示第一个正则表达式匹配出得内容,\2表示第二个正则表达式匹配错的内容。

如果仔细看可以发现,第一个参数不一样,logrt的第一个参数可以使用正则表达式。针对日志回滚用得,例如我们每天都切割nginx日志,日志名为www.a.com_2015-01-01.log、www.a.com_2015-01-02.log等等,使用log肯定不合适,如果文件名使用正则,那么新增的日志文件会立即加入监控。

备注:不管新日志、老日志,只要他们有变更,zabbix都会监控。

只要配置了<regexp>,Zabbix会根据<regexp>的正则表达式来匹配日志中的内容。注意,一定要保证Zabbix用户对日志文件有可读权限,否则这个Item的状态会变成"unsupported"。

监控日志的前提条件:

  1. 需要监控的日志赋权
  2. zabbix-agent主动式
  3. 无法用zabbix_get方式测试

1.给需要监控的文件赋权限

[root@zabbix-1 ~]# ll /var/log/messages
-rw------- 1 root root 1206 Nov 10 05:40 /var/log/messages
[root@zabbix-1 ~]# setfacl -m u:zabbix:r /var/log/messages
[root@zabbix-1 ~]# ll /var/log/messages
-rw-r-----+ 1 root root 1407 Nov 10 06:01 /var/log/messages
#加号表示此文件设置了facl

如果要赋予rwx
[root@zabbix-1 ~]# setfacl -m u:zabbix:rwx /var/log/messages

2.创建监控项

选择一个主机,创建监控项

类型必须选择"zabbix主动式"

在这里插入图片描述

Key: log[/var/log/messages] 表示监控这个/var/log/messages日志,全部监控。

Key: log[/var/log/messages,error,] 表示只监控messages中包含error的部分

3.创建触发器

配置——>主机,找到zabbix server,触发器——>创建触发器
在这里插入图片描述

在这里插入图片描述

如果日志中出现error字符串,就会触发Trigger,发生告警。

然后,我们出发一个日志到messages

[root@zabbix-1 ~]# echo "Nov 10 06:27:01 zabbix-1 zabbix-agent: This is a test error 222 info." >> /var/log/messages

在这里插入图片描述
在这里插入图片描述

可以看到,触发器已经成功触发。说明前面的配置是成功的。

Log与Logrt区别

key:
log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>]
logrt[file_regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

log与logrt区别在于第一个参数不一样,logrt的第一个参数可以使用正则表达式。针对日志回滚用得,例如我们每天都切割nginx日志,日志名位error_2022-11-09.log、error_2022-11-10.log等等,使用log肯定不合适,如果文件名使用正则,那么新增的日志文件会立即加入监控。
备注:不管新日志、老日志,只要他们有变更,zabbix都会监控。
例子

logrt[error_*.log,<regexp>,<encoding>,<maxlines>,<mode>,<output>]
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

攻城狮JasonLong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值