民工兄MongoDB教程:MD状态检测与性能监控
MongoDB状态检测(mongo stat)
MongoDB mongo Stats脚本用于检测MongoDB服务的状态。
安装、部署和运行MongoDB后,我们需要了解MongoDB的工作原理并检查MongoDB的性能。
这样可以应对大流量,保证MongoDB持续正常运行。
MongoDB 提供了 mongo stat 和 mongo top 两个命令来监控 MongoDB 流量。
mongo stat 命令
mongo stat 是 MongoDB 自己的命令行统计工具。
mogostat 命令以固定的时间间隔获取 MongoDB 流量的当前状态并将其输出。
如果发现数据库突然变慢或者出现其他问题,首先要做的就是利用mongo的统计数据来查看mongo的状态。
语法
MongoDB mongo统计脚本命令语法格式如下
$ mongostat <options> <polling interval in seconds>
示例
$ mongostat
输出结果如下
$ mongostat
输出结果如下
$ mongostat
insert query update delete getmore command flushes mapped vsize res faults qrw arw net_in net_out conn time
*0 *0 *0 *0 0 2|0 0 6.49G 18.0M 0 0|0 0|0 160b 24.5k 2 Oct 24 07:56:41.321
*0 *0 *0 *0 0 2|0 0 6.49G 18.0M 0 0|0 0|0 158b 24.1k 2 Oct 24 07:56:42.317
*0 *0 *0 *0 0 1|0 0 6.49G 18.0M 0 0|0 0|0 157b 24.0k 2 Oct 24 07:56:43.319
*0 *0 *0 *0 0 2|0 0 6.49G 18.0M 0 0|0 0|0 158b 24.1k 2 Oct 24 07:56:44.317
结果tin PingMongo OngoDB mongotop 脚本命令使用监控 MongoDB 服务的性能。
mongo MongoDB 下的内置工具。
mongo top 提供了一种监控 MongoDB 实例并查看其读取和写入数据花费了多少时间的方法。
mongo top 提供每个级别集的统计数据。
默认情况下,mongo每秒都会发布顶级数据。
语法
MongoDB mongo top脚本命令语法如下
$ mongotop <sleeptime> --locks
参数分析
- 指定锁定输出数据的频率,默认值为1秒
- 输出使用lock-'
- 默认参数示例
$ mongotop
输出结果如下
$ mongotop 2017-10-24T07:39:50.970+0800 connected to: 127.0.0.1 ns total read write 2017-10-24T07:39:51+08:00 admin.system.indexes 0ms 0ms 0ms admin.system.namespaces 0ms 0ms 0ms admin.system.roles 0ms 0ms 0ms admin.system.users 0ms 0ms 0ms admin.system.version 0ms 0ms 0ms gridfs.fs.chunks 0ms 0ms 0ms gridfs.fs.files 0ms 0ms 0ms gridfs.system.indexes 0ms 0ms 0ms gridfs.system.namespaces 0ms 0ms 0ms local.startup_log 0ms 0ms 0ms
带参数示例
$ mongotop 10
输出结果如下
$ mongotop 10 2017-10-24T07:43:41.990+0800 connected to: 127.0.0.1 ns total read write 2017-10-24T07:43:51+08:00 admin.system.indexes 0ms 0ms 0ms admin.system.namespaces 0ms 0ms 0ms admin.system.roles 0ms 0ms 0ms admin.system.users 0ms 0ms 0ms admin.system.version 0ms 0ms 0ms gridfs.fs.chunks 0ms 0ms 0ms gridfs.fs.files 0ms 0ms 0ms gridfs.system.indexes 0ms 0ms 0ms gridfs.system.namespaces 0ms 0ms 0ms local.startup_log 0ms 0ms 0ms ns total read write 2017-10-24T07:44:01+08:00 admin.system.indexes 0ms 0ms 0ms admin.system.namespaces 0ms 0ms 0ms admin.system.roles 0ms 0ms 0ms admin.system.users 0ms 0ms 0ms admin.system.version 0ms 0ms 0ms gridfs.fs.chunks 0ms 0ms 0ms gridfs.fs.files 0ms 0ms 0ms gridfs.system.indexes 0ms 0ms 0ms gridfs.system.namespaces 0ms 0ms 0ms local.startup_log 0ms 0ms 0ms
以下10个是不能使用的参数,mongo等待的等待时间长度(秒)调用之间
锁输出的使用情况
$ mongotop --locks
报告每个数据库的锁使用情况,输出结果如下:
输出结果字段说明 ♝ns:❙ns:❙与数据库名称和集合。
- db:
包含数据库的名称。一个名为 的数据库。它是全局锁定的,而不是针对特定数据库。
- 总计:
mongo d 提供了在此名称空间上工作所花费的总时间。
- 读:
提供大量时间 mongo 在此命名空间上执行读取操作
- 写入:
为写入操作提供此命名空间 mongo 在 Time 上花费大量时间
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。