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

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

延伸 · 阅读

精彩推荐
  • MongoDBWindows下MongoDB配置用户权限实例

    Windows下MongoDB配置用户权限实例

    这篇文章主要介绍了Windows下MongoDB配置用户权限实例,本文实现需要输入用户名、密码才可以访问MongoDB数据库,需要的朋友可以参考下 ...

    MongoDB教程网3082020-04-29
  • MongoDBMongoDB系列教程(五):mongo语法和mysql语法对比学习

    MongoDB系列教程(五):mongo语法和mysql语法对比学习

    这篇文章主要介绍了MongoDB系列教程(五):mongo语法和mysql语法对比学习,本文对熟悉Mysql数据库的同学来说帮助很大,用对比的方式可以快速学习到MongoDB的命...

    MongoDB教程网3252020-05-01
  • MongoDBMongoDB多条件模糊查询示例代码

    MongoDB多条件模糊查询示例代码

    这篇文章主要给大家介绍了关于MongoDB多条件模糊查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MongoDB具有一定的参考学习价值...

    浅夏晴空5902020-05-25
  • MongoDB在mac系统下安装与配置mongoDB数据库

    在mac系统下安装与配置mongoDB数据库

    这篇文章主要介绍了在mac系统下安装与配置mongoDB数据库的操作步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    CXYhh1219312021-11-14
  • MongoDBmongodb数据库基础知识之连表查询

    mongodb数据库基础知识之连表查询

    这篇文章主要给大家介绍了关于mongodb数据库基础知识之连表查询的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mongodb具有一定的参...

    ZJW02155642020-05-22
  • MongoDBMongoDB的索引

    MongoDB的索引

    数据库中的索引就是用来提高查询操作的性能,但是会影响插入、更新和删除的效率,因为数据库不仅要执行这些操作,还要负责索引的更新 ...

    MongoDB教程网2532020-05-12
  • MongoDBMongodb索引的优化

    Mongodb索引的优化

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。接下来通过本文给大家介绍Mongodb索引的优化,本文介绍的非常详细,具有参考借鉴价值,感...

    MRR3252020-05-05
  • MongoDBMongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    MongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    这篇文章主要给大家介绍了关于MongoDB查询之高级操作(多条件查询、正则匹配查询等)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者...

    w田翔3872020-12-19