您的位置:首页 > 数据库 > Memcache

zabbix利用lld监控memcached

2016-08-12 12:00 543 查看

zabbix利用lld监控memcached

1. 编写端口发现脚本

#!/bin/bash
#Function: memcache low-level discovery
#Script_name: memport.sh
memcache() {
port=(`sudo /bin/netstat -tlnp|awk -F "[ :]+" '/memcached/ && /0.0.0.0/ {print $5}'`)
max_index=$[${#port[@]}-1]
printf '{\n'
printf '\t"data":['
for key in ${!port[@]}
do
printf '\n\t\t{'
printf "\"{#MEMPORT}\":\"${port[${key}]}\"}"
if [ $key -ne $max_index ];then
printf ","
fi
done
printf '\n\t]\n'
printf '}\n'
}
$1


2. 编写memcache状态发现脚本

#!/bin/bash
port="$1"
item="$2"
value=`(echo "stats";sleep 0.1) | telnet 127.0.0.1 $port 2>/dev/null| grep "STAT $item\b" | awk '{print $3}'`
echo "$value"


3. 编写自定义配置文件

UserParameter=memport[*],/opt/zabbix_agent/script/memport.sh $1
UserParameter=memcache[*],/opt/zabbix_agent/script/memcache.sh $1 $2


4. 修改zabbix配置文件

# grep "^Timeout" zabbix_agentd.conf
Timeout=30
# grep "^Include" zabbix_agentd.conf
Include=/opt/zabbix_agent/etc/zabbix_agentd.conf.d/
# grep "^UnsafeUserParameters" zabbix_agentd.conf
UnsafeUserParameters=1


5. 修改系统配置文件

# grep "^Defaults" /etc/sudoers
Defaults    requiretty
Defaults:zabbix    !requiretty
# grep "^zabbix" /etc/sudoers
zabbix ALL=(root) NOPASSWD:/bin/netstat


6. 重启zabbix客户端

# service zabbix_agentd restart
Shutting down zabbix_agentd:                               [  OK  ]
Starting zabbix_agentd:                                    [  OK  ]


7. 链接相关模板















内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zabbix memcached