zoukankan      html  css  js  c++  java
  • MongoDB 监控工具 mongostat

    mongostat是mongodb自带的状态检测工具,在命令行下使用,会间隔固定时间获取mongodb的当前运行状态,并输出。

    命令:( version: v4.2.12-13 )

    # mongostat --host=127.0.0.1 --port=27017 --username=admin --password='hankyoon' --authenticationDatabase=admin
    
    insert query update delete getmore command dirty used flushes vsize   res qrw arw net_in net_out conn set   repl               time
        *0    *0     *0     *0       0    26|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  4.52k    137k  137 yoon  PRI Aug  3 20:33:43.036
        *0    *0     *0     *0       2    20|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  5.94k   92.8k  137 yoon  PRI Aug  3 20:33:44.035
        *0    *0     *0     *0       0    16|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  2.94k   90.2k  137 yoon  PRI Aug  3 20:33:45.035
        *0    *0     *0     *0       0     6|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  1.31k   42.5k  137 yoon  PRI Aug  3 20:33:46.036
        *0    *0     *0     *0       0     0|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0   262b   38.3k  137 yoon  PRI Aug  3 20:33:47.036
        *0    *0     *0     *0       0     5|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  1.10k   41.0k  137 yoon  PRI Aug  3 20:33:48.035
        *0    *0     *0     *0       1     3|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  3.04k   41.1k  137 yoon  PRI Aug  3 20:33:49.036
        *0    *0     *0     *0       0     6|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  1.26k   41.7k  137 yoon  PRI Aug  3 20:33:50.035
        *0    *0      1     *0       7    10|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  13.8k   49.7k  137 yoon  PRI Aug  3 20:33:51.036
        *0    *0     *0     *0       0     5|0  0.0% 0.2%       0 3.07G 1.01G 0|0 1|0  1.15k   41.0k  137 yoon  PRI Aug  3 20:33:52.036

    监控指标详解:

    insert   每秒插入数
    query    每秒查询数
    update   每秒更新数
    delete   每秒删除数
    注1:如果是slave,数值前往往有一个*, 代表是replicate操作
    注2:一秒内执行的命令数比如批量插入,只认为是一条命令(所以意义应该不大)
    
    getmore  查询时游标(cursor)的getmore操作
    command  每秒内执行的命令数,在主从系统中会显示两个值(例如 3|0),分表代表 本地|复制 命令
    dirty    仅仅针对WiredTiger引擎,官网解释是脏数据字节的缓存百分比
    used     仅仅针对WiredTiger引擎,官网解释是正在使用中的缓存百分比
    flushes: For WiredTiger引擎:指checkpoint的触发次数在一个轮询间隔期间
             For MMAPv1 引擎:每秒执行fsync将数据写入硬盘的次数
    注:一般都是0,间断性会是1, 通过计算两个1之间的间隔时间,可以大致了解多长时间flush一次。flush开销是很大的,如果频繁的flush,可能就要找找原因了
    
    vsize:  虚拟内存使用量,单位MB (这是 在mongostat 最后一次调用的总数据)
    res:     物理内存使用量,单位MB (这是 在mongostat 最后一次调用的总数据)
    注:这个和你用top看到的一样, vsize一般不会有大的变动, res会慢慢的上升,如果res经常突然下降,去查查是否有别的程序狂吃内存。
    
    qr: 客户端等待从MongoDB实例读数据的队列长度
    qw:客户端等待从MongoDB实例写入数据的队列长度
    ar: 执行读操作的活跃客户端数量
    aw: 执行写操作的活客户端数量
    注:如果这两个数值很大,那么就是DB被堵住了,DB的处理速度不及请求速度。看看是否有开销很大的慢查询。如果查询一切正常,确实是负载很大,就需要加机器了
    
    net_in  network traffic in - bits  MongoDB实例的网络进流量
    net_out network traffic out - bits MongoDB实例的网络出流量
    
    conn  MongoDB为每一个连接创建一个线程,线程的创建与释放也会有开销,所以尽量要适当配置连接数的启动参数
  • 相关阅读:
    openldap
    Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
    Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P2141 珠心算测验
    Java实现 洛谷 P1567 统计天数
    Java实现 洛谷 P1567 统计天数
  • 原文地址:https://www.cnblogs.com/hankyoon/p/15096544.html
Copyright © 2011-2022 走看看