记录zabbix配置自定义监控碰到问题,方便以后遇到相同的问题来参考
根据老大的要求,增加一项监控进程监控项,
配置文件

UserParameter=daytimer,/etc/zabbix/item-scripts/service_linux/service_timer2.sh

脚本

#!/bin/bash

num=$(ps -ef | grep daytimer.js | grep -v grep | wc -l)

if [ $num -eq 0 ]
then
    echo "0"
else
    echo "1"
fi

配置完成后重启zabbix-agent

systemctl restart zabbix-agent 

本机测试

zabbix_agentd -t  daytimer 
daytimer                                      [t|1]

一切正常,但是zabbix服务端就是获取不到数据,在server端用zabbix_get 获取数据也是获取不到,新增的监控项怎么都获取不到key,老的就没问题

$zabbix_get -s 192.168.58.99 -p 10050 -k daytimer
ZBX_NOTSUPPORTED: Unsupported item key.

检查网络连通性,端口 防火墙 ,都没问题,中间还把防火墙关闭了,还是不行s!

telnet  192.168.58.99 10050
systemctl status firewalld 

查看服务运行状态,和端口
Unsupported item key._第1张图片
端口和服务都是正常的,就是这个key找不到。
查看日志的时候发现问题,下面是错误日志

listener failed: zbx_tcp_listen() fatal error: unable to serve on any address [[0.0.0.0.1]:10050]

监听失败,很奇怪服务的运行状态没问题 ,端口也起来了,还有报错。重启服务也是不行。百度了一下,按照网友的方法,改了监听的IP

vim /etc/zabbix/zabbix-agentd.conf
ListenIP=0.0.0.0
改成 127.0.0.1 局域网ip ,公网ip 还是不行,错误还是一样,最后还是改回了默认的 0.0.0.0

试了N多方法,最后可行的方法,记录下来供大家参考

killall -TERM zabbix_agentd  杀死所有进程
systemctl start zabbix-agetd  在启动

server 端测试

1


接下来在就是在web页面配置监控项了,这个比较简单,就不多叙述了
 参考的博客 https://www.cnblogs.com/weifeng1463/p/9331097.html