1.写脚本
链接: https://pan.baidu.com/s/1iH6_PQGyzMaGk-YSqrQZ2g 提取码: 5j52
2.测试脚本
[root@localhost ~]# cd /tmp/
[root@localhost tmp]# ll
总用量 480
-rw-r--r-- 1 zabbix zabbix 67 10月 15 15:38 aaa.log 创建一个日志文件,这里我创建的是aaa.log
-rw-r--r-- 1 root root 1854 2月 27 2018 log.py
[root@localhost tmp]# chown zabbix.zabbix log.py
[root@localhost tmp]# chmod +x log.py
[root@localhost tmp]# ll log.py
-rwxr-xr-x 1 zabbix zabbix 1854 2月 27 2018 log.py
[root@localhost tmp]# cat aaa.log
dajskdnakdnwa
dsmldnailndwa
djoamodijaw
czoinclz
Error
Error
error
[root@localhost tmp]# python /tmp/log.py /tmp/aaa.log 由于脚本提取的日志文件的Error关键字,查找到了就会显示为1,这样来显示是否日志有报错
1
[root@localhost tmp]# python /tmp/log.py /tmp/aaa.log 这次没有报错,是因为本次查找是从上次结束的地方开始查找,后面没有能匹配的,所以显示的0
0
3.编辑客户端配置文件(我是yum安装的,文件在/etc/zabbix下,编码安装在/usr/local/etc/下)
[root@localhost ~]# cd /etc/zabbix/
[root@localhost zabbix]# ls
log.py zabbix_agentd.conf zabbix_server.conf
web zabbix_agentd.d zabbix.sh
[root@localhost zabbix]# vim zabbix_agentd.conf 修改以下两行
UnsafeUserParameters=1
UserParameter=checklog,usr/bin/python /tmp/log.py /tmp/aaa.log /tmp/logseek Error 这里依次为键值,python的结对路径,脚本的路径,日志文件的路径,seek position文件的路径,搜索的关键字
[root@localhost zabbix]# chown zabbix.zabbix /tmp -R 修改目录权限,不然服务端会没有权限
[root@localhost zabbix]# systemctl restart zabbix-agent
4.服务端测试
[root@zabbix-client ~]# zabbix_get -s 192.168.138.129 -k checklog 无论是1还是0,都代表是配置成功
0
4.web界面配置
最后点击添加即可
5.测试
[root@localhost tmp]# cat aaa.log 添加一个Error
Error
dsadas
dsa
dsa
d
sad
asdas
dasdas
dasdasd
sadasd
asd
sadw
ad
dasdas
Error