MongoDB 状态监控

部署

在准备MongoDB部署时,应尝试了解您的应用程序将如何在生产环境中保持稳定。开发一种一致,可重复的方法来管理部署环境是一个好主意,这样一来,一旦投入生产,您就可以最大程度地减少意外。最好的方法包括对您的设置进行原型制作,进行负载测试,监视关键指标并使用该信息来扩展您的设置。该方法的关键部分是主动监视整个系统-这将帮助您了解生产系统在部署之前将如何承受,并确定需要在何处增加容量。例如,深入了解内存使用量的潜在峰值可能有助于在启动之前扑灭写锁定。为了监视您的部署,MongoDB提供了以下一些命令-

mongostat

此命令检查所有正在运行的mongod实例的状态,并返回数据库操作的计数器。这些计数器包括插入,查询,更新,删除和游标。命令还会显示遇到页面错误的时间,并显示锁定百分比。这意味着您的内存不足,写入容量不足或出现一些性能问题。要运行该命令,请启动您的mongod实例。在另一个命令提示符下,转到mongodb安装的bin目录,然后键入mongostat
mongostat输出如下-

C:\Users\Administrator>mongostat
insert query update delete getmore command dirty used flushes vsize   res qrw arw net_in net_out conn                time
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   112b   41.6k    2 Aug 31 14:42:42.895
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:43.896
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.6k    2 Aug 31 14:42:44.896
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:45.896
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:46.896
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   112b   41.6k    2 Aug 31 14:42:47.895
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:48.897
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   112b   41.7k    2 Aug 31 14:42:49.895
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:50.895
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   166b   41.8k    2 Aug 31 14:42:51.897
insert query update delete getmore command dirty used flushes vsize   res qrw arw net_in net_out conn                time
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   112b   41.6k    2 Aug 31 14:42:52.895
*0    *0     *0     *0       0     0|0  0.0% 0.0%       1 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:53.896
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:54.896
*0    *0     *0     *0       0     1|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   112b   41.6k    2 Aug 31 14:42:55.895
*0    *0     *0     *0       0     0|0  0.0% 0.0%       0 5.35G 25.0M 0|0 1|0   111b   41.5k    2 Aug 31 14:42:56.897

mongotop

此命令在收集的基础上跟踪并报告MongoDB实例的读写活动。默认情况下,mongotop每秒钟返回一次信息,您可以相应地对其进行更改。您应该检查此读写活动是否符合您的应用意图,并​​且一次不会对数据库进行太多写入,从磁盘中读取数据的频率过高或超出您的工作集大小。要运行该命令,请启动您的mongod实例。在另一个命令提示符下,转到mongodb安装的bin目录,然后键入mongotop。
以下是命令的输出-

C:\Users\Administrator>mongotop
2020-08-31T14:45:48.165+0800    connected to: mongodb://localhost/
ns    total    read    write    2020-08-31T14:45:49+08:00
admin.system.roles      0ms     0ms      0ms
admin.system.version      0ms     0ms      0ms
config.system.sessions      0ms     0ms      0ms
config.transactions      0ms     0ms      0ms
local.oplog.rs      0ms     0ms      0ms
local.system.replset      0ms     0ms      0ms
my_db.people      0ms     0ms      0ms
ns    total    read    write    2020-08-31T14:45:50+08:00
admin.system.roles      0ms     0ms      0ms
admin.system.version      0ms     0ms      0ms
config.system.sessions      0ms     0ms      0ms
config.transactions      0ms     0ms      0ms
local.oplog.rs      0ms     0ms      0ms
local.system.replset      0ms     0ms      0ms
my_db.people      0ms     0ms      0ms

提示:使用命令的 --help 选项来查看使用帮助。

以上是MongoDB 状态监控的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>