zabbix监控mongod
参考 :http://john88wang.blog.运维网.com/2165294/1565968http://aaronsa.blog.运维网.com/5157083/1741514监控项讲解
1 被监控端写mongodb.sh
注意:里面的路径和你的端口要看自己的实际情况
case $# in
1)
output=$(/bin/echo "db.serverStatus().$1" |/usr/local/mongodb/bin/mongo admin --port 27017|sed -n '3p')
;;
2)
output=$(/bin/echo "db.serverStatus().$1.$2" |/usr/local/mongodb/bin/mongo admin --port 27017|sed -n '3p')
;;
3)
output=$(/bin/echo "db.serverStatus().$1.$2.$3" |/usr/local/mongodb/bin/mongo admin --port 27017|sed -n '3p')
;;
esac
#check if the output contains "NumberLong"
if [[ "$output" =~ "NumberLong" ]];then
echo $output|sed -n 's/NumberLong(//p'|sed -n 's/)//p'
else
echo $output
fi
2 编辑zabbix_agentd.conf配置文件
添加如下内容
UserParameter=MongoDB.Status
[*],/usr/local/zabbix/script/mongodb.sh $1 $2 $3
3 导入模板并重启zabbix_agentd服务
见附件
4 服务端测试
/home/usr/local/zabbix/bin/zabbix_get -s ip -kMongoDB.Status
40667759
#######################################################################################
mongodb 监控项
MongoDB.Status
MongoDB.Status##自实例启动以来,在游标执行getMore次数
MongoDB.Status ##自实例启动以来,执行insert次数
MongoDB.Status ##自实例启动以来,执行query次数
MongoDB.Status##自实例启动以来,执行其他操作的次数
MongoDB.Status
MongoDB.Status
MongoDB.Status##平均每次刷新执行时间
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status ##当前实例是mongod,还是mongos
MongoDB.Status##实例连续正常运行时间,单位秒
used_connections_percentage
used_memory_percentage
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status
MongoDB.Status##当前实例堆大小,单位bytes
MongoDB.Status##加载磁盘内容时发生页错误的次数
MongoDB.Status
MongoDB.Status 当前活动的连接数
MongoDB.Status
MongoDB.Status
MongoDB.Status##剩余多少可供连接
MongoDB.Status ##当前连接到本机处于活动状态的连接数
MongoDB.Status
MongoDB.Status 当前活动的写连接数
MongoDB.Status 当前活动的读连接数
MongoDB.Status
MongoDB.Status#当前等待获取读锁的队列
MongoDB.Status
MongoDB.Status 访问索引时,索引不是在内存中被命中的次数
MongoDB.Status 索引计数器被重置的次数
MongoDB.Status 访问索引时,索引在内存中被命中的次数
MongoDB.Status
MongoDB.Status #当前等待获取锁的队列
MongoDB.Status#当前等待获取写锁的队列
附件:http://down.运维网.com/data/2366830
页:
[1]