zabbix添加对自定义无规则的关键日志文件的监控

时间:2023-12-22 20:43:26

zabbix添加对自定义无规则日志文件的监控

项目背景及思路:
zabbix自带有针对日志文件的监控,自带的监控只能监控到指定文件或者正则匹配的固定日志文件,但当需要监控的文件名没有规律的时候自带监控就不适用了

此次需要监控关键的esb企业总线文件日志,当tail -f esb日志出现大量failture的时候就是业务可能出现故障的时候,需要触发警报

zabbix添加对自定义无规则的关键日志文件的监控

具体步骤:

1.修改zabbix-agent客户端配置:
a.visudo修改配置

添加zabbix用户的sudo权限
# 添加如下这行
zabbix ALL=(ALL) NOPASSWD: ALL

b.注释掉如下这行
#Defaults    requiretty

③修改客户端配置
/etc/zabbix/zabbix_agentd.conf
UserParameter=esb_status,sudo /bin/bash /usr/local/zabbix-agent/scripts/esb_status.sh

2.在被监控的zabbix-agent端添加需要监控的脚本
vim /usr/local/zabbix-agent/scripts/esb_status.sh

#!/bin/bash
# 日志文件目录
path=/home/yunva/log/esbE001
# 找到最新的日志文件名 ls -t 按照时间排序,最新的在上面
esb_file=`ls -t "${path}" | head -1` fail_count=`tail -n 200 $path/${esb_file} |grep 'failure'|wc -l`
echo $fail_count

添加脚本的执行权限
chmod +x /usr/local/zabbix-agent/scripts/user_num.sh

3.zabbix-server端的配置
①添加items

zabbix添加对自定义无规则的关键日志文件的监控
②添加graphs趋势图

zabbix添加对自定义无规则的关键日志文件的监控

③添加触发器,当失败次数过半的时候出发报警

Name :

esb failure gt 100

Expression:
{1.1.1.1:esb_status.last(0)}>100

zabbix添加对自定义无规则的关键日志文件的监控

报警

zabbix添加对自定义无规则的关键日志文件的监控