使用zabbix监控MongoDB
现在公司几个游戏项目主要使用MongoDB来存储游戏数据,所以对MongoDB的监控非常重要。关于MongoDB的其他监控方法详见以下几篇文章:
MongoDB监控一
MongoDB监控二 mongotop
MongoDB监控三 MongoDB自带监控方法
MongoDB监控四 dbStats和collStats和replSetGetStatus
http://mayulin.blog.51cto.com/1628315/575541
zabbix监控MongoDB的基本思路是先编写自定义脚本收集MongoDB的状态信息,通过db.serverStatus()函数的输出来获取,然后添加相应的模板。
本文使用的MongoDB版本是2.4.6
主要监控以下项目:
内存使用情况
连接数
锁
刷新写操作到磁盘
每秒执行的查询,插入,删除,更新等操作次数
每秒访问的索引次数,每秒命中索引的次数
MongoDB产生的总的页面错误数量
MongoDB的网络流量状况
编写监控脚本mongodb_status.sh
这里默认使用28018端口,可以根据情况自行修改端口
这个脚本根据传递参数的数量进行判断获取值的层级
#This script is used to get mongodb server status#echo "db.serverStatus().uptime"|mongo 192.168.5.23:30002/admin #echo "db.serverStatus().mem.mapped"|mongo 192.168.5.23:30002/admin #echo "db.serverStatus().globalLock.activeClients.total"|mongo 192.168.5.23:30002/admincase $# in1)output=$(/bin/echo "db.serverStatus().$1" |/data/app_platform/mongodb/bin/mongo admin --port 28018|sed -n '3p');;2)output=$(/bin/echo "db.serverStatus().$1.$2" |/data/app_platform/mongodb/bin/mongo admin --port 28018|sed -n '3p');;3)output=$(/bin/echo "db.serverStatus().$1.$2.$3" |/data/app_platform/mongodb/bin/mongo admin --port 28018|sed -n '3p');; esac#check if the output contains "NumberLong" if [[ "$output" =~ "NumberLong" ]];thenecho $output|sed -n 's/NumberLong(//p'|sed -n 's/)//p' else echo $output fi
2.添加zabbix配置文件mongodb_status.conf
将mongodb_status.conf放到/usr/local/zabbix/etc/zabbix_agentd.conf.d/目录下
在zabbix的主配置文件中需要注意设置
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1
#echo "db.serverStatus().mem.mapped"|mongo admin --host xxxx --port xxx -uroot -pxxxx
#echo "db.serverStatus().mem.mapped"|mongo 10.4.9.112:28018/admin -uroot -pxxxx
#UserParameter=MongoDB.Status[*],/bin/echo "db.serverStatus().$1.$2" |/data/app_platform/mongodb/bin/mongo admin --port 28018|sed -n '3p'
UserParameter=MongoDB.Status[*],/usr/local/zabbix/bin/mongodb_status.sh $1 $2 $3
3.添加MongoDB监控模板
附件为参考模板
转载于:https://blog.51cto.com/john88wang/1565968
使用zabbix监控MongoDB相关推荐
- Zabbix监控MongoDB、Nignx、Redis、Php-fpm、SNMP(如打印机)
Zabbix:v3.4 MongoDB:v3.4 MongoDB模板,感谢大神 MongoDB for Zabbix:https://share.zabbix.com/databases/mongod ...
- zabbix 监控mongodb
为什么80%的码农都做不了架构师?>>> #!/bin/sh # 获取mongodb 状态信息 # Cur_Dir: 当前脚本所在目录 # param: 参数 # mem/ v ...
- Zabbix监控MongoDB
模板下载地址:https://github.com/linux503/Zabbix_Temple 导入的模板:Templates_mongod_port_is_20717 参考博文:http://ww ...
- zabbix系列(十二) 监控MongoDB业务数据
目录 一.简介 二.部署说明 2.1编写python程序进行获取mogno数据 2.2.上传python脚本至服务器,并测试通过 2.3.配置zabbix web页面,获取数据入库 2.4 .配置gr ...
- 文件服务器 监控,zabbix监控文件服务器
06:Zabbix基础.Zabbix监控实战.Zabbix报警机制 部署搭建Zabbix监控服务器 192.168.4.56 部署Zabbix监控服务运行环境 LAMP 安装Zabbix软件 2.1 ...
- 使用Zabbix Agent 2监控MongoDB
参考链接 : 使用Zabbix Agent 2监控MongoDB https://mp.weixin.qq.com/s/41-CNF-_n8upXeUBOioMpw 从Zabbix5.0.10和5.2 ...
- zabbix监控nginx,网易Java面试流程
同样的添加到之前的配置文件里面,重启agent端服务读取脚本 我们在server1验证,获取agent端的相关键值 同样的,分别添加三个监控项nginx_accept,nginx_handle,ngi ...
- 手把手教你使用zabbix监控nginx
zabbix监控nginx,多亏了容哥(杨容)的帮忙,为了感谢容哥的帮助,写了这篇文章. 环境介绍: 服务器系统版本:CentOSrelease 6.6 (Final) 内核版本:Linux hk_n ...
- zabbix监控客户端(二)
zabbix监控客户端(二) 1.同步客户端时间,防止跟服务器端不一致,导致检测到不可用的监控数据. 2.创建zabbix运行所需要的用户跟组 #groupadd -g 201 zabbix #use ...
最新文章
- 【camera-radar】基于ROS的多传感器融合感知系统实现(雷达+相机)(1)
- matlab 画 矩阵点,在MATLAB中绘制矩阵中点之间的线
- 使用Powershell如何导出Exchange对象中的多值属性值
- iOS UI基础-11.0 UINavigationController
- ubuntu安装mysql,error: No curses/termcap library found报错
- Girton College Info Session Abstract
- 对oracle sql的一些总结
- mysql 线程_MySQL服务器线程数的查看方法详解
- svn钩子程序上传文件中文文件导致报错的处理办法
- 数据竞赛入门-金融风控(贷款违约预测)一、赛题介绍
- live-server的安装使用,临时服务器
- c++使用librdkafka kerberos认证
- PT100热敏电阻原理解析
- Infor CloudSuite Industrial (SyteLine) IDO 行授权 设置
- 【CI/CD】详解自动化开发之CI/CD(持续集成、持续交付、持续部署)
- java.io.IOException: Server returned HTTP response code: 503 for UR
- Can‘t connect to any repository: 的解决办法, 在Push代码,提交代码到代码仓库的时候,提示不能连接到该代码仓库
- 广义相对论-学习记录6-第三章-张量分析与黎曼几何3
- LabVIEW编程LabVIEW开发视频教学例程与相关资料
- android monkey 工具,Maxim-高速 Android Monkey 工具使用记录