服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - MongoDB - MongoDB 监控工具mongostat和mongotop的使用

MongoDB 监控工具mongostat和mongotop的使用

2021-05-10 17:37AsiaYe MongoDB

这篇文章主要介绍了MongoDB 监控工具mongostat和mongotop的使用方法,帮助大家更好的理解和学习使用MongoDB,感兴趣的朋友可以了解下

    mongodb中自带两个监控的工具,分别是mongostat和mongotop,今天我们看看这两个工具的使用方法。

mongostat

 

mongostat工具提供了mongod和mongos的运行状态和数据,可以从mongostat工具的执行结果中获取如下信息:

这里有必要将其中的某些关键列说明一下:

insert、query、update、delete 分别代表每秒的操作次数

getmore代表当前批量查询得到的文档个数,如果查询的文档多,mongodb会自动批量查询

command代表primary和secondary的节点指令个数,如果是在从库上执行,则代表从库执行的命令数据以及复制从库的其他实例的命令执行情况,二者通过|分割。

dirty代表wiretiger存储引擎的缓冲中脏字节的百分比。

used代表已经使用的wiretiger存储引擎缓存比例

flushed对于wiretiger存储引擎,表示触发检查点的次数;对于mmapv1存储引擎,表示当前将数据写入磁盘的次数

vsize:程序应用的虚拟内存大小

res:当前已经使用的物理内存量,单位为mb

qrw:等待读取的文档个数与等待写入的文档个数

arw:正在执行的读取文档个数与正在执行的写入文档个数

net_in|net_out  进出的网络流量

conn:当前连接数

需要注意的是mongostat是一个持续输出的命令,只要我们不手动终止,它会一直运行,输出到屏幕上。

mongotop

 

相比mongostat,mongotop输出的内容有限,来看下面的例子:

ns,集合名字

total:读写花费时间(单位是ms)

read:读花费时间

write:写花费时间

mongotop输出的内容表示每个集合的每个表读写情况,它打印了每个库里面读写花费的时长,单位是ms,可以帮助快速定位读写瓶颈。

mongotop这个命令只运行一次,如果想每间隔一段时间,就运行一次,则可以使用:

mongotop 30

这样的写法,可以让mongotop命令每30s运行一次,这样可以持续的检测mongodb的运行状态。

除了这两个工具之外,还有一些其他的命令可以查看集群的状态:

 

  • db.serverstatus()
  • db.stats()
  • db.collstats()
  • rs.status()

下面分别解释这几个命令。

db.serverstatus()

这条命令会列出mongodb的整体情况,包含主机名字、版本、进程、连续运行时间、连接状态以及操作状态。因为它显示的结果比较长,这里我们只说说常用的几个信息:

host:主机名字

version:mongodb版本

process:pid进程号

uptime:主机的运行时间

asserts:mongodb启动后报警的统计数量

connections:mongodb的连接统计信息

network:mongodb的网路情况

storageengine:存储引擎信息

mem:当前使用的内存信息

db.stats()

该命令显示的是db的信息,没有server层面的信息,我们解释下下面db的意思。

db:代表当前数据库的名称

collections:当前数据库中集合的数量

view:当前数据库中视图的数量

objects:当前数据库中所有文档的数量

avgobjsize:数据库中文档的平均大小

datasize:当前数据库的数据大小,单位是byte

storagesize:当前数据库占用硬盘空间的大小,单位是byte

numextents:当前数据库中所有集合extents扩展的数量统计

indexes:当前数据库中的索引数量

indexsize:当前数据库中的索引代销,单位是byte

fsusedsize:当前mongodb所在的硬盘已经使用的空间大小

fstotalsize:当前mongodb所在的硬盘总共的空间大小

ok:1表示成功,0表示失败

db.coll.stats()

这个函数返回的是集合的状态信息,由于输出的内容很多,这里我们仅说明重要的几个部分:

ns:当前集合的名称

size:当前集合的大小,单位是byte

count:当前集合的文档数量

nindexes:当前集合中索引的数量

totalindexsize:当前集合中所有索引的大小,单位是byte

rs.status()

这个函数是用来查看副本集中的成员的状态信息,如下:

下面对常用的字段进行描述:

set:副本集的名称

date:当前的时间

mystate:当前副本集节点的状态

term:副本集的选举数

syncingto:从哪个副本集同步数据,如果这里是空值,则代表当前副本是primary

syncsourcehost、syncsourceid分别代表同步目标节点的host和id值

heartbeatintervalmills:副本集心跳频率,单位为ms

optimes:副本集同步的进度信息

laststablecheckpointtimestamp:列出最近的检查点的时间。

members:列出副本集中每个成员的信息数据。

以上就是mongodb 监控工具mongostat和mongotop的使用的详细内容,更多关于mongodb 监控工具的资料请关注服务器之家其它相关文章!

原文链接:https://cloud.tencent.com/developer/article/1753161

延伸 · 阅读

精彩推荐
  • MongoDBMongodb数据库误删后的恢复方法(两种)

    Mongodb数据库误删后的恢复方法(两种)

    本文给大家分享两种方法来实现Mongodb数据库误删后的恢复,每种方法给大家介绍的都非常详细,需要的朋友参考下吧 ...

    fyg05249922020-05-18
  • MongoDBMongoDB 简单入门教程(安装、基本概念、创建用户)

    MongoDB 简单入门教程(安装、基本概念、创建用户)

    这篇文章主要介绍了MongoDB 简单入门教程(安装、基本概念、创建用户)的相关资料,帮助大家更好的理解和学习使用MongoDB数据库,感兴趣的朋友可以了解下...

    AsiaYe6352021-05-10
  • MongoDBMongoDB简单操作示例【连接、增删改查等】

    MongoDB简单操作示例【连接、增删改查等】

    这篇文章主要介绍了MongoDB简单操作,涉及命令行窗口下使用MongoDB进行简单的连接、增删改查等相关操作技巧,需要的朋友可以参考下 ...

    tinyphp2982020-05-23
  • MongoDBMongoDB分片测试

    MongoDB分片测试

    分片是mongoDB扩展的一种方式。分片分割一个collection并将不同的部分存储在不同的机器上,本文给大家介绍MongoDB分片测试,需要的朋友参考下吧 ...

    我思,故我在5532020-05-05
  • MongoDBMongo服务重启异常问题的处理方法

    Mongo服务重启异常问题的处理方法

    这篇文章主要给大家介绍了关于Mongo服务重启异常问题的处理方法,这个问题其实还是挺常见的,通过此文学习处理方法,以后遇到了就不会措手不及的,需要的...

    Leafage11842021-08-24
  • MongoDBMongodb如何开启用户访问控制详解

    Mongodb如何开启用户访问控制详解

    默认启动 MongoDB 服务时没有任何参数,可以对数据库任意操 作,而且可以远程访问数据库,所以推荐开发阶段可以不设置任何参数,但对于生产环境还是要...

    不争5402020-05-10
  • MongoDB将MongoDB加入到Windows的本地服务项的方法

    将MongoDB加入到Windows的本地服务项的方法

    下面主要针对MongoDB在Windows下加入本地服务项做一些简单的分享。以方便刚接触MongoDB并在Windows环境下进行开发的同学 ...

    MongoDB教程网3012020-04-28
  • MongoDBMongoDB 学习笔记

    MongoDB 学习笔记

    最近在学习MongoDB,小结一下,主要都是一些基础知识,需要的朋友可以参考下 ...

    服务器之家3412020-04-25