|
自定义脚本监控squid的一些日常状态,脚本如下:
脚本放置路径:/usr/local/zabbix-agent-ops/bin zabbix agent的bin下面
cat check_squid_status.sh
########################################################################
# File Name: check_squid_status.sh
# Author: kerncai
# mail: kernkerncai@gmail.com
# Created Time: 2013年11月12日 星期二 10时30分05秒
#########################################################################
#!/bin/bash
five_ratios(){
/usr/local/squid-2.7/bin/squidclient -h localhost -p 3128 mgr:info |grep 'Request Hit Ratios:' |awk '{print$5/100}'
}
six_ratios(){
/usr/local/squid-2.7/bin/squidclient -h localhost -p 3128 mgr:info |grep 'Request Hit Ratios:' |awk '{print$7/100}'
}
objects(){
/usr/local/squid-2.7/bin/squidclient -h localhost -p 3128 mgr:info |grep 'on-disk objects' |awk '{print$1}'
}
space(){
/usr/local/squid-2.7/bin/squidclient -hlocalhost -p 3128 mgr:storedir |grep 'Filesystem Space in use:' |awk -F '/' '{print$1}'|awk '{s+=$5};END{printf "%4.2f\n",s/1024/1024}'
}
$1
因为我需要的比较少,只是命中率、cachesize、图片数(我这边做的是图片缓存),其他的一些状态可以自行添加脚本命令
zabbix.agentd.conf内配置如下
UnsafeUserParameters=1
UserParameter=five.ratios,/usr/local/zabbix-agent-ops/bin/check_squid_status.sh five_ratios
UserParameter=six.ratios,/usr/local/zabbix-agent-ops/bin/check_squid_status.sh six_ratios
UserParameter=objects,/usr/local/zabbix-agent-ops/bin/check_squid_status.sh objects
UserParameter=space,/usr/local/zabbix-agent-ops/bin/check_squid_status.sh space
相关zabbix web的模板在github上面:https://github.com/kerncai/zabbix/tree/master/squid ,squid模板和上述脚本是配套使用的 `
包括其他的memcache、redis、apache等,脚本以及监控原理都是相同的 ,在此只是把大概的思路写一下
个人博客:http://www.kerncai.com/ |
|
|