zabbix 获取不到自定义脚本的值解决
agent端:zabbix 自定义脚本
# cat check_ping.sh
#!/bin/bash
result=$(/usr/local/nagios/libexec/check_icmp -s $1 $2)
a=$(echo $result | awk '{print $1}')
if [ $a == "OK" ];then
echo "0000"
else
echo "2222"
fi
#
执行脚本:
# sh check_ping.sh 172.16.8.11 www.baidu.com
0000
#
# sh check_ping.sh 172.16.8.11 www.nimeiakao.com
2222
修改zabbix_agentd.conf配置并重启服务:
+++++++++++++
### Option: UnsafeUserParameters
# Allow all characters to be passed in arguments to user-defined parameters.
# 0 - do not allow
# 1 - allow
#
# Mandatory: no
# Range: 0-1
# Default:
UnsafeUserParameters=1
### Option: UserParameter
# User-defined parameter to monitor. There can be several user-defined parameters.
# Format: UserParameter=<key>,<shell command>
# See 'zabbix_agentd' directory for examples.
#
# Mandatory: no
# Default:
UserParameter=check.icmpping
[*],/usr/local/zabbix/script/check_ping.sh $1 $2
++++++++++++++++++++++++++
# /etc/init.d/zabbix_agentd restart
Shutting down zabbix_agentd:
Starting zabbix_agentd:
#
在服务端使用命令检测自定义key是否可行:
# zabbix_get -s 172.16.8.11 -p 10050 -k "check.icmpping"
0000
# zabbix_get -s 172.16.8.11 -p 10050 -k "check.icmpping"
ZBX_NOTSUPPORTED
#
从上面可以看出,对于不通的值zabbix服务端始终取不到值,出现ZBX_NOTSUPPORTED
zabbix取不到值得解决办法:
修改agent端的超时时间并重启agent服务:
### Option: Timeout
# Spend no more than Timeout seconds on processing
#
# Mandatory: no
# Range: 1-30
# Default:
#Timeout=3
Timeout=8
# /etc/init.d/zabbix_agentd restart
Shutting down zabbix_agentd:
Starting zabbix_agentd:
#
在server端再次测试:
# zabbix_get -s 172.16.8.11 -p 10050 -k "check.icmpping"
0000
# zabbix_get -s 172.16.8.11 -p 10050 -k "check.icmpping"
2222
#
页:
[1]