zoukankan      html  css  js  c++  java
  • 副本集的serverStatus监控

     mongodb服务整体状态信息:

    db.runCommand( { serverStatus: 1 } )
    
    db.serverStatus()

    获取mongodb版本信息:

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).version
    4.0.17-10
    glc-test:SECONDARY>

    服务已经运行时间(单位为秒):

    mongod服务启动后到现在已经存活的秒数:

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).uptime 2075 glc-test:SECONDARY>

     进程类型(分mongod和mongos两种):

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).process
    mongod
    glc-test:SECONDARY>
    
    
    ####################
    
    mongos> db.runCommand({serverStatus:1}).process
    mongos
    mongos>

     断言信息:

    # 例如我们去查看断言的asserts 其中例如 warning  , user 数量的变化,在有明显的某段时间的增量后,就需要对mongodb的日志进行观察,查询了

    # asserts: 报告自MongoDB进程启动以来引发的断言数目的文档。虽然断言错误一般不常见,但如果asserts非零,则应检查日志文件以获取更多信息。在许多情况下,这些错误是微不足道的,但值得研究。

    # asserts.regular: 自MongoDB进程启动以来引发的常规断言数。检查日志文件以获取有关这些消息的更多信息。

    # asserts.warning: 在4.0版中更改, 从MongoDB 4.0开始,该字段返回零0。在早期版本中,该字段返回自MongoDB进程启动以来引发的警告数。

    # asserts.msg: 自MongoDB进程启动以来引发的消息断言数。检查日志文件以获取更多信息。

    # asserts.user: 自上次MongoDB进程启动以来发生的“用户断言”数。这些是用户可能生成的错误,例如磁盘空间不足或重复密钥。您可以通过修复应用程序或部署问题来阻止这些断言。查看MongoDB日志以获取更多信息。

    # asserts.rollovers:自上次MongoDB进程启动以来翻转计数器已翻转的次数。在2^30个断言之后,计数器将翻转为零。使用此值可为asserts数据结构中的其他值提供上下文 。

    mongos> db.runCommand({serverStatus:1}).asserts { "regular" : 0, "warning" : 0, "msg" : 0, "user" : 9538, "rollovers" : 0 } mongos>


    #################################

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).asserts
    { "regular" : 0, "warning" : 0, "msg" : 0, "user" : 48, "rollovers" : 0 }
    glc-test:SECONDARY>

     

     页缺失数量:

    # extra_info[page_faults]: 页缺失的次数,当性能不佳的时候,页缺失数可能急剧增加。这可能与内存受限和大的数据集合有关,有限且偶发的页面错误不一定表示存在问题

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).extra_info.page_faults 7 glc-test:SECONDARY>

    连接数信息:

    glc-test:SECONDARY> db.runCommand({serverStatus:1}).connections
    { "current" : 10, "available" : 10230, "totalCreated" : 972, "active" : 1 }

    # 当前正在活动的连接数: glc
    -test:SECONDARY> db.runCommand({serverStatus:1}).connections.active 1
    # 当前客户端到数据库服务器的连接数。此数值包括当前的shell会话:
    glc
    -test:SECONDARY> db.runCommand({serverStatus:1}).connections.current 10
    # 可用的未使用连接数:
    glc
    -test:SECONDARY> db.runCommand({serverStatus:1}).connections.available 10230
    # 累计已经创建过的连接数,此数字包括已关闭的连接:
    glc
    -test:SECONDARY> db.runCommand({serverStatus:1}).connections.totalCreated 982 glc-test:SECONDARY>

    全局锁信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).globalLock
    {
            "totalTime" : NumberLong("6641104292000"),
            "currentQueue" : {
                    "total" : 3,
                    "readers" : 3,
                    "writers" : 0
            },
            "activeClients" : {
                    "total" : 59,
                    "readers" : 0,
                    "writers" : 1
            }
    }

    ==================================
    #globalLock.currentQueue.total: 等锁的操作的总数(即,总和globalLock.currentQueue.readers和 globalLock.currentQueue.writers)。
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.currentQueue.total 3
    =====================================
    #globalLock.currentQueue.readers: 排队等待读锁的操作数。持续很小的读队列,尤其是较短的操作,不必关注。

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.currentQueue.readers 3
    ====================================
    #globalLock.currentQueue.writers: 排队等待写锁的操作数。持续很小写队列,特别是较短的操作,不必关注。

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.currentQueue.writers 0
    #######################################################################################

    =================================
    #globalLock.activeClients.total: 内部客户端连接db总数,包括系统线程以及读写队列。由于包括系统线程,此值将高于activeClients.readers 和activeClients.writers之和。

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.activeClients.total 59
    =================================
    #globalLock.activeClients.readers: 执行读操作的活跃客户端连接数。

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.activeClients.readers 0
    ==================================
    #globalLock.activeClients.writers: 执行写操作的活跃客户端连接数。

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).globalLock.activeClients.writers 1 glc-test:PRIMARY>

    锁监控信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).locks
    {
            "Global" : {
                    "acquireCount" : {
                            "r" : NumberLong(268520492),
                            "w" : NumberLong(4012050),
                            "R" : NumberLong(1),
                            "W" : NumberLong(243637)
                    },
                    "acquireWaitCount" : {
                            "r" : NumberLong(140),
                            "w" : NumberLong(688),
                            "W" : NumberLong(57)
                    },
                    "timeAcquiringMicros" : {
                            "r" : NumberLong("60903006897"),
                            "w" : NumberLong("6167369228"),
                            "W" : NumberLong(6636)
                    }
            },
            "Database" : {
                    "acquireCount" : {
                            "r" : NumberLong(180952566),
                            "w" : NumberLong(3805130),
                            "R" : NumberLong(8),
                            "W" : NumberLong(216)
                    },
                    "acquireWaitCount" : {
                            "r" : NumberLong(17),
                            "w" : NumberLong(123),
                            "W" : NumberLong(32)
                    },
                    "timeAcquiringMicros" : {
                            "r" : NumberLong("11971702698"),
                            "w" : NumberLong("2727138813"),
                            "W" : NumberLong(129081)
                    }
            },
            "Collection" : {
                    "acquireCount" : {
                            "r" : NumberLong(82733356),
                            "w" : NumberLong(3561420),
                            "W" : NumberLong(7)
                    },
                    "acquireWaitCount" : {
                            "r" : NumberLong(16)
                    },
                    "timeAcquiringMicros" : {
                            "r" : NumberLong("28236381486")
                    }
            },
            "Metadata" : {
                    "acquireCount" : {
                            "W" : NumberLong(245)
                    },
                    "acquireWaitCount" : {
                            "W" : NumberLong(117)
                    },
                    "timeAcquiringMicros" : {
                            "W" : NumberLong(9585)
                    }
            },
            "Mutex" : {
                    "acquireCount" : {
                            "W" : NumberLong(2)
                    }
            },
            "oplog" : {
                    "acquireCount" : {
                            "r" : NumberLong(100101963),
                            "w" : NumberLong(243617),
                            "W" : NumberLong(1)
                    }
            }
    }
    glc-test:PRIMARY> 

     网络流量信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).network
    {
            "bytesIn" : NumberLong("151144866398"),
            "bytesOut" : NumberLong("808195680961"),
            "physicalBytesIn" : NumberLong("147732715815"),
            "physicalBytesOut" : NumberLong("636611536772"),
            "numRequests" : NumberLong(103740653),
            "compression" : {
                    "snappy" : {
                            "compressor" : {
                                    "bytesIn" : NumberLong("268216472216"),
                                    "bytesOut" : NumberLong("95172234043")
                            },
                            "decompressor" : {
                                    "bytesIn" : NumberLong("32244871203"),
                                    "bytesOut" : NumberLong("38976582101")
                            }
                    }
            },
            "serviceExecutorTaskStats" : {
                    "executor" : "adaptive",
                    "totalQueued" : NumberLong(209366202),
                    "totalExecuted" : NumberLong(209366202),
                    "threadsInUse" : 4,
                    "totalTimeRunningMicros" : NumberLong("107216244178788"),
                    "totalTimeExecutingMicros" : NumberLong("5972553634823"),
                    "totalTimeQueuedMicros" : NumberLong(908878363),
                    "threadsRunning" : 16,
                    "threadsPending" : 0,
                    "threadCreationCauses" : {
                            "stuckThreadsDetected" : NumberLong("7528457633249249205"),
                            "starvation" : NumberLong("7802015030183150985"),
                            "belowReserveMinimum" : NumberLong("7303197360618091898")
                    },
                    "metricsByTask" : {
                            "processMessage" : {
                                    "totalQueued" : NumberLong(103740649),
                                    "totalExecuted" : NumberLong(103740649),
                                    "totalTimeExecutingMicros" : NumberLong("5967280314479"),
                                    "totalTimeQueuedMicros" : NumberLong(40439426)
                            },
                            "sourceMessage" : {
                                    "totalQueued" : NumberLong(103740410),
                                    "totalExecuted" : NumberLong(103740410),
                                    "totalTimeExecutingMicros" : NumberLong(1107032830),
                                    "totalTimeQueuedMicros" : NumberLong(845618144)
                            },
                            "exhaustMessage" : {
                                    "totalQueued" : NumberLong(0),
                                    "totalExecuted" : NumberLong(0),
                                    "totalTimeExecutingMicros" : NumberLong(0),
                                    "totalTimeQueuedMicros" : NumberLong(0)
                            },
                            "startSession" : {
                                    "totalQueued" : NumberLong(1885143),
                                    "totalExecuted" : NumberLong(1885143),
                                    "totalTimeExecutingMicros" : NumberLong(253285732),
                                    "totalTimeQueuedMicros" : NumberLong(22820792)
                            }
                    }
            }
    }
    
    ====================
    # 数据库接受的网络传输字节数,需要计算每秒内的字节数。
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).network.bytesIn NumberLong("151144873696")
    =====================
    # 数据库发送的网络传输字节数,需要计算每秒内的字节数。
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).network.bytesOut NumberLong("808195886901")
    =====================
    # 数据库接收到的请求的总次数,通常需要计算每秒的次数。
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).network.numRequests NumberLong(103740729)
    glc
    -test:PRIMARY>

     命令执行个数统计:

            自mongod最近一次启动实例以来, 按数据库操作类型报告的文档 ,注意:opcounters操作中的数据数据受多文档影响,例如批量插入或多次更新操作,将作为单个操作处理。有关更详细的文档级操作跟踪,请参阅metrics.document 。此外,这些值反映了接收的操作,即使操作不成功也会增加

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters
    {
            "insert" : 153434913,
            "query" : 263980,
            "update" : 10306,
            "delete" : 224,
            "getmore" : 70066965,
            "command" : 33180791
    }
    
    ==================
    # 数据库执行的插入操作次数,需要计算每秒次数:
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.insert 153434913
    ==================
    # 数据库执行的删除操作次数,需要计算每秒次数:
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.delete
    224
    
    ==================
    # 数据库执行的更新操作次数,需要计算每秒次数:
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.update
    10307
    
    ==================
    # 数据库执行的查询操作次数,需要计算每秒次数:
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.query
    263984
    
    ==================
    # 数据库执行的命令操作次数,需要计算每秒次数:
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.command
    33181236
    
    ==================
    # 数据库执行的getmore操作次数,需要计算每秒次数:
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcounters.getmore
    70067033
    
    glc
    -test:PRIMARY>


    opcounters.insert:自上次启动mongod实例以来,收到的插入操作总数 。

    opcounters.query: 自上次启动mongod实例以来,收到的查询操作总数。

    opcounters.update:自上次启动mongod实例以来,收到的更新操作总数 。

    opcounters.delete:自上次启动mongod实例以来,收到的删除操作总数。

    opcounters.getmore:自上次启动mongod实例以来,“getmore”操作的总数。即使查询数目较低,此计数器也可能很高。作为复制进程的一部分,Secondary节点将发送getMore操作

    opcounters.command:自mongod上次启动实例以来,向数据库发出的命令总数,需要排除增删改命令 。


     文档增删改返回数量统计:

    glc-test:PRIMARY> db.serverStatus().metrics.document
    {
            "deleted" : NumberLong(51),
            "inserted" : NumberLong(153434902),
            "returned" : NumberLong(834010010),
            "updated" : NumberLong(10217)
    }
    
    =================
    glc
    -test:PRIMARY> db.serverStatus().metrics.document.inserted NumberLong(153434902)
    =================
    glc
    -test:PRIMARY> db.serverStatus().metrics.document.deleted NumberLong(51)
    =================
    glc
    -test:PRIMARY> db.serverStatus().metrics.document.updated NumberLong(10218)
    =================
    glc
    -test:PRIMARY> db.serverStatus().metrics.document.returned NumberLong(834010038)

    因复制操作的统计:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl
    {
            "insert" : 19,
            "query" : 0,
            "update" : 19,
            "delete" : 18,
            "getmore" : 0,
            "command" : 1
    }
    
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.insert 19
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.delete 18
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.update 19
    ===================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.query 0
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.command 1
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).opcountersRepl.getmore 0
    glc
    -test:PRIMARY>

    ====================

    opcountersRepl:自上次启动mongod实例以来按类型报告数据库复制操作的文档。当前主机是副本集的成员时才会显示这些值。

    MongoDB在复制期间序列化操作,因此这些值将与opcounters值不同。更多信息请参阅复制。这些数字将随着时间的推移而增长,以响应数据库使用,直到下次重启。随着时间的推移分析这些值以跟踪数据库利用率。
    opcountersRepl.insert:自上次启动mongod实例以来复制插入操作的总数 。

    opcountersRepl.query:自 上次启动mongod实例以来复制查询的总数。

    opcountersRepl.update:自上次启动mongod实例以来复制更新操作总数 。

    opcountersRepl.delete:自上次启动mongod实例以来复制的删除操作总数 。

    opcountersRepl.getmore:自上次启动mongod实例以来“getmore”操作的总数。即使查询数目较低,此计数器也可能很高。作为复制进程的一部分,secondary节点发送getMore操作。

    opcountersRepl.command:自上次启动mongod实例以来发送到数据库的复制命令总数。

    ####################################################################

    注意!!!!:仅当当前主机是副本集的成员时,才会显示这些值。

     mongodb内存使用统计:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).mem
    {
            "bits" : 64,
            "resident" : 4310,
            "virtual" : 6269,
            "supported" : true,
            "mapped" : 0,
            "mappedWithJournal" : 0
    }
    
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).mem.resident 4304
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).mem.virtual 6269

    mem.resident 大致等于mongod进程当前使用的RAM量(以兆字节(MiB)为单位)。在正常使用期间,该值趋于增加。在专用数据库服务器中,此数字趋向于接近系统内存总量。
    mem.virtual 显示mongod进程使用的虚拟内存量(以兆字节(MiB)为单位)。
     

     实例角色确认:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).repl
    {
            "hosts" : [
                    "c3-dba-glc-db03.bj:28042",
                    "c4-mc-buffer-db41.bj:28042",
                    "c4-using-glc-db05.bj:28042"
            ],
            "setName" : "glc-test",
            "setVersion" : 3,
            "ismaster" : true,
            "secondary" : false,
            "primary" : "c4-mc-buffer-db41.bj:28042",
            "me" : "c4-mc-buffer-db41.bj:28042",
            "electionId" : ObjectId("7fffffff0000000000000073"),
            "lastWrite" : {
                    "opTime" : {
                            "ts" : Timestamp(1605252345, 1),
                            "t" : NumberLong(115)
                    },
                    "lastWriteDate" : ISODate("2020-11-13T07:25:45Z"),
                    "majorityOpTime" : {
                            "ts" : Timestamp(1605252345, 1),
                            "t" : NumberLong(115)
                    },
                    "majorityWriteDate" : ISODate("2020-11-13T07:25:45Z")
            },
            "rbid" : 1
    }
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).repl.ismaster
    true
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).repl.secondary
    false
    glc-test:PRIMARY> db.runCommand({serverStatus:1}).repl.setName
    glc-test

    ########################################################################
    若db.runCommand({serverStatus:1}).repl.ismaster = true ,则为primary角色;
    若db.runCommand({serverStatus:1}).repl.secondary = true,则为secondary角色;
    若db.runCommand({serverStatus:1}).repl.secondary = false,且 db.runCommand({serverStatus:1}).repl.ismaster = false ,且db.runCommand({serverStatus:1}).repl.setName 不为false,则为secondary角色

    否则为standalone角色:

    wiredTiger缓存统计信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).wiredTiger.cache
    {
            "application threads page read from disk to cache count" : 48718926,
            "application threads page read from disk to cache time (usecs)" : 2514482076,
            "application threads page write from cache to disk count" : 1990467,
            "application threads page write from cache to disk time (usecs)" : 64791253,
            "bytes belonging to page images in the cache" : 2477045336,
            "bytes belonging to the cache overflow table in the cache" : 182,
            "bytes currently in the cache" : 3435228132,  ---------------------------------->>    wiredTiger cache的字节数,当前在缓存中的数据的字节大小。该值不应大于最大缓存大小。                                           
            "bytes dirty in the cache cumulative" : 312694322946,--------------------------->>    wiredTiger cache中"dirty"数据的字节数,缓存中脏数据的大小(以字节为单位)。该值应小于 bytes currently in the cache。
            "bytes not belonging to page images in the cache" : 958182795,
            "bytes read into cache" : NumberLong("7731788908256348"),----------------------->>    数据库写入wiredTiger cache的字节数,需要计算每秒字节数。
            "bytes written from cache" : 277403867305,-------------------------------------->>    数据库从wiredTiger cache写入到磁盘的字节数,需要计算每秒字节数。
            "cache overflow cursor application thread wait time (usecs)" : 0,
            "cache overflow cursor internal thread wait time (usecs)" : 0,
            "cache overflow score" : 0,
            "cache overflow table entries" : 0,
            "cache overflow table insert calls" : 0,
            "cache overflow table max on-disk size" : 0,
            "cache overflow table on-disk size" : 0,
            "cache overflow table remove calls" : 0,
            "checkpoint blocked page eviction" : 54,
            "eviction calls to get a page" : 55036280,
            "eviction calls to get a page found queue empty" : 484223,
            "eviction calls to get a page found queue empty after locking" : 543347,
            "eviction currently operating in aggressive mode" : 0,
            "eviction empty score" : 0,
            "eviction passes of a file" : 2799546,
            "eviction server candidate queue empty when topping up" : 320638,
            "eviction server candidate queue not empty when topping up" : 291565,
            "eviction server evicting pages" : 0,
            "eviction server slept, because we did not make progress with eviction" : 2961658,
            "eviction server unable to reach eviction goal" : 0,
            "eviction server waiting for a leaf page" : 1507000170,
            "eviction server waiting for an internal page sleep (usec)" : 0,
            "eviction server waiting for an internal page yields" : 100,
            "eviction state" : 128,
            "eviction walk target pages histogram - 0-9" : 1848324,
            "eviction walk target pages histogram - 10-31" : 266882,
            "eviction walk target pages histogram - 128 and higher" : 0,
            "eviction walk target pages histogram - 32-63" : 185330,
            "eviction walk target pages histogram - 64-128" : 499010,
            "eviction walk target strategy both clean and dirty pages" : 196870,
            "eviction walk target strategy only clean pages" : 2580530,
            "eviction walk target strategy only dirty pages" : 22146,
            "eviction walks abandoned" : 199618,
            "eviction walks gave up because they restarted their walk twice" : 1161121,
            "eviction walks gave up because they saw too many pages and found no candidates" : 634488,
            "eviction walks gave up because they saw too many pages and found too few candidates" : 5235,
            "eviction walks reached end of tree" : 2947891,
            "eviction walks started from root of tree" : 1896637,
            "eviction walks started from saved location in tree" : 902909,
            "eviction worker thread active" : 4,
            "eviction worker thread created" : 0,
            "eviction worker thread evicting pages" : 54001065,
            "eviction worker thread removed" : 0,
            "eviction worker thread stable number" : 0,
            "files with active eviction walks" : 0,
            "files with new eviction walks started" : 1786770,
            "force re-tuning of eviction workers once in a while" : 0,
            "forced eviction - pages evicted that were clean count" : 2645046,
            "forced eviction - pages evicted that were clean time (usecs)" : 2748172,
            "forced eviction - pages evicted that were dirty count" : 1,
            "forced eviction - pages evicted that were dirty time (usecs)" : 40,
            "forced eviction - pages selected because of too many deleted items count" : 2809,
            "forced eviction - pages selected count" : 2702464,
            "forced eviction - pages selected unable to be evicted count" : 22321,
            "forced eviction - pages selected unable to be evicted time" : 36567,
            "hazard pointer blocked page eviction" : 5815,
            "hazard pointer check calls" : 56708452,
            "hazard pointer check entries walked" : 344900361,
            "hazard pointer maximum array length" : 2,
            "in-memory page passed criteria to be split" : 113326,
            "in-memory page splits" : 35100,
            "internal pages evicted" : 478489,
            "internal pages queued for eviction" : 466169,
            "internal pages seen by eviction walk" : 22350674,
            "internal pages seen by eviction walk that are already queued" : 137555,
            "internal pages split during eviction" : 849,
            "leaf pages split during eviction" : 39843,
            "maximum bytes configured" : 4294967296,---------------------------------------->> 这个是mongodb数据库的mongodb.conf配置文件中配置的cacheSizeGB大小,最大缓存大小,相当于mysql的缓冲池大小。
            "maximum page size at eviction" : 0,
            "modified pages evicted" : 215182,
            "modified pages evicted by application threads" : 0,
            "operations timed out waiting for space in cache" : 0,
            "overflow pages read into cache" : 0,
            "page split during eviction deepened the tree" : 20,
            "page written requiring cache overflow records" : 0,
            "pages currently held in the cache" : 138974,
            "pages evicted by application threads" : 0,
            "pages queued for eviction" : 59889728,
            "pages queued for eviction post lru sorting" : 60355154,
            "pages queued for urgent eviction" : 56076,
            "pages queued for urgent eviction during walk" : 8035,
            "pages read into cache" : 48719134,
            "pages read into cache after truncate" : 442,
            "pages read into cache after truncate in prepare state" : 0,
            "pages read into cache requiring cache overflow entries" : 0,
            "pages read into cache requiring cache overflow for checkpoint" : 0,
            "pages read into cache skipping older cache overflow entries" : 0,
            "pages read into cache with skipped cache overflow entries needed later" : 0,
            "pages read into cache with skipped cache overflow entries needed later by checkpoint" : 0,
            "pages requested from the cache" : 1154239659,
            "pages seen by eviction walk" : 90248892,
            "pages seen by eviction walk that are already queued" : 4615085,
            "pages selected for eviction unable to be evicted" : 29178,
            "pages selected for eviction unable to be evicted as the parent page has overflow items" : 0,
            "pages selected for eviction unable to be evicted because of active children on an internal page" : 4274,
            "pages selected for eviction unable to be evicted because of failure in reconciliation" : 0,
            "pages selected for eviction unable to be evicted due to newer modifications on a clean page" : 0,
            "pages walked for eviction" : 3450449135,
            "pages written from cache" : 11082806,
            "pages written requiring in-memory restoration" : 5736,
            "percentage overhead" : 8,
            "tracked bytes belonging to internal pages in the cache" : 107003774,
            "tracked bytes belonging to leaf pages in the cache" : 3328224358,
            "tracked dirty bytes in the cache" : 2324125,
            "tracked dirty pages in the cache" : 4,
            "unmodified pages evicted" : 56381596
    }
    

    wiredTiger事务统计信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).wiredTiger.concurrentTransactions
    {
            "write" : {
                    "out" : 0,
                    "available" : 128,
                    "totalTickets" : 128
            },
            "read" : {
                    "out" : 1,
                    "available" : 127,
                    "totalTickets" : 128
            }
    }
    

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).wiredTiger.concurrentTransactions.write.available 128

    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).wiredTiger.concurrentTransactions.read.available 127

    wiredTiger的block-manager统计信息:

     
    "block-manager" : { "blocks pre-loaded" : 3236, "blocks read" : 49028852, "blocks written" : 11704040, "bytes read" : 530830061568, "bytes written" : 119824228352, "bytes written for checkpoint" : 12477071360, "mapped blocks read" : 0, "mapped bytes read" : 0

     oplog统计信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl
    {
            "executor" : {
                    "pool" : {
                            "inProgressCount" : 0
                    },
                    "queues" : {
                            "networkInProgress" : 0,
                            "sleepers" : 3
                    },
                    "unsignaledEvents" : 0,
                    "shuttingDown" : false,
                    "networkInterface" : "DEPRECATED: getDiagnosticString is deprecated in NetworkInterfaceTL"
            },
            "apply" : {
                    "attemptsToBecomeSecondary" : NumberLong(1),
                    "batchSize" : NumberLong(243804),
                    "batches" : {
                            "num" : 243613,
                            "totalMillis" : 411
                    },
                    "ops" : NumberLong(243804)
            },
            "buffer" : {
                    "count" : NumberLong(0),
                    "maxSizeBytes" : NumberLong(268435456),
                    "sizeBytes" : NumberLong(0)
            },
            "initialSync" : {
                    "completed" : NumberLong(1),
                    "failedAttempts" : NumberLong(0),
                    "failures" : NumberLong(0)
            },
            "network" : {
                    "bytes" : NumberLong(26827062),
                    "getmores" : {
                            "num" : 731518,
                            "totalMillis" : 2437415427
                    },
                    "ops" : NumberLong(243814),
                    "readersCreated" : NumberLong(12)
            },
            "preload" : {
                    "docs" : {
                            "num" : 0,
                            "totalMillis" : 0
                    },
                    "indexes" : {
                            "num" : 0,
                            "totalMillis" : 0
                    }
            }
    }
    
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl.apply.batches.num 243613
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl.apply.batches.totalMillis 411
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl.apply.ops NumberLong(243804)
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl.buffer.count NumberLong(0)
    ==================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.repl.buffer.sizeBytes NumberLong(0)


     游标统计信息:

    glc-test:PRIMARY> db.runCommand({serverStatus:1}).metrics.cursor
    {
            "timedOut" : NumberLong(22),
            "open" : {
                    "noTimeout" : NumberLong(0),
                    "pinned" : NumberLong(1),
                    "total" : NumberLong(1)
            }
    }
    
    ===================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.cursor.timedOut NumberLong(22)
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.cursor.open.noTimeout NumberLong(0)
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.cursor.open.pinned NumberLong(1)
    =================
    glc
    -test:PRIMARY> db.runCommand({serverStatus:1}).metrics.cursor.open.total NumberLong(1)

    ##############################################

  • 相关阅读:
    初认识AngularJS
    (imcomplete) UVa 10127 Ones
    UVa 10061 How many zero's and how many digits?
    UVa 11728 Alternate Task
    UVa 11490 Just Another Problem
    UVa 10673 Play with Floor and Ceil
    JSON对象和字符串的收发(JS客户端用typeof()进行判断非常重要)
    HTML.ActionLink 和 Url.Action 的区别
    EASYUI TREE得到当前节点数据的GETDATA方法
    jqueery easyui tree把已选中的节点数据拼成json或者数组(非常重要)
  • 原文地址:https://www.cnblogs.com/igoodful/p/13963917.html
Copyright © 2011-2022 走看看