serverStatus详解(下篇)
security
security:3.0版中的新功能。报告安全配置和详细信息的文档。仅在针对TLS / SSL编译的mongod实例中出现。
security.SSLServerSubjectName: net.ssl.PEMKeyFile指定的TLS / SSL证书关联的主题名称 。
security.SSLServerHasCertificateAuthority:布尔值true表示net.ssl.PEMKeyFile 指定的TLS / SSL证书与证书颁发机构关联时。false表示TLS / SSL证书是自签名的。
security.SSLServerCertificateExpirationDate:
一个日期对象,表示由net.ssl.PEMKeyFile指定的TLS / SSL证书到期的日期 。
sharing
版本3.2中的新功能:运行时mongos,该命令返回分片信息。
在版本3.6中更改:从MongoDB 3.6开始,分片成员返回分片信息。
sharding:包含分片集群数据的文档。lastSeenConfigServerOpTime仅存在在mongos或分片成员,而配置节点不存在。
sharding.configsvrConnectionString:配置服务器的连接字符串。
sharding.lastSeenConfigServerOpTime:
mongos或shard成员可见,CSRS primary的最新 optime。optime文档包括:
ts,操作的时间戳。
t,term表示操作在primary上最初生成的时间。
lastSeenConfigServerOpTime仅存在在使用CSRS(副本集)的分片集群中。
sharding.maxChunkSizeInBytes:版本3.6中的新功能。块的最大大小限制。如果最近在配置服务器上更新了块大小,则maxChunkSizeInBytes可能无法反映最新值。
shardingStatistics
4.0版中的新功能。
shardingStatistics:分片集群上元数据刷新的指标的文档。
shardingStatistics.countStaleConfigErrors:线程命中陈旧配置异常的总次数。由于陈旧的配置异常触发元数据的刷新,因此该数字大致与元数据刷新的数量成比例。仅存在在正在运行的分片上。
shardingStatistics.countDonorMoveChunkStarted:作为块迁移过程的一部分, moveChunk 命令在分片上启动的总次数(此节点是其成员)。这个数字都会增加不论迁移是否成功。仅存在在运行分片上。
shardingStatistics.totalDonorChunkCloneTimeMillis:从当前shard块迁移的克隆阶段所占用的累积时间(以毫秒为单位),此节点是该节点的成员。具体而言,对于从此分片的每次迁移,跟踪时间从发起moveChunk命令开始, 结束于目标分片进入追赶阶段之前,应用在块迁移期间发生的更改 。仅存在在运行的分片上。
shardingStatistics.totalCriticalSectionCommitTimeMillis:从此分片块迁移过程中的更新元数据阶段所花费的累积时间(以毫秒为单位)。在更新元数据阶段,将阻止集合上的所有操作。仅存在在运行的分片上。
shardingStatistics.totalCriticalSectionTimeMillis:从此分片块迁移的追赶阶段和更新元数据阶段所占用的累积时间(以毫秒为单位),此节点是该节点的成员。
要计算追赶阶段的持续时间为
totalCriticalSectionTimeMillis - totalCriticalSectionCommitTimeMillis
仅存在于在运行分片上运行时出现。
shardingStatistics.catalogCache:集群路由信息缓存的统计信息的文档。
shardingStatistics.catalogCache.numDatabaseEntries:
当前在编目缓存中的数据库条目总数。
shardingStatistics.catalogCache.numCollectionEntries:当前位于编目缓存中的集合条目总数(跨所有数据库)。
shardingStatistics.catalogCache.countStaleConfigErrors:线程命中过时配置异常的总次数。过时的配置异常会触发元数据的刷新。
shardingStatistics.catalogCache.totalRefreshWaitTimeMicros:线程必须等待刷新元数据的累积时间(以微秒为单位)。
shardingStatistics.catalogCache.numActiveIncrementalRefreshes:当前正在等待的增量编目缓存刷新的数量。
shardingStatistics.countIncrementalRefreshesStarted:已启动的累计增量刷新次数。
shardingStatistics.catalogCache.numActiveFullRefreshes:正在等待的全量编目缓存刷新的数量。
shardingStatistics.catalogCache.countFullRefreshesStarted:已启动的累计全量刷新数。
shardingStatistics.catalogCache.countFailedRefreshes:已失败的全量或增量刷新的累计数量。
storageEngine
3.0版中的新功能。
storageEngine:包含当前存储引擎数据的文档。
storageEngine.name:当前存储引擎的名称。
storageEngine.supportsCommittedReads:版本3.2中的新功能。
一个布尔值,表示存储引擎是否支持"majority" read concern。
storageEngine.persistent:版本3.2.6中的新功能。一个布尔值,表示存储引擎是否将数据持久化到磁盘。
transactions
版本3.6.3中的新功能。
transactions:包含有关可重试写入和 多文档事务的数据的文档。
transactions.retriedCommandsCount:相应的可重试写入命令已经提交之后收到的重试总数。也就是说,即使写入已成功并且在config.transactions 集合中存在的事务和会话的关联记录,可重试写入继续尝试,例如客户端的初始写入响应丢失。
注意:MongoDB不会重新执行已提交的写入。
总数包括所有会话。总数不包括在内部块迁移时的发生的可重试写入。
版本3.6.3中的新功能。
transactions.retriedStatementsCount:与重试命令 transactions.retriedCommandsCount关联的写语句总数。
注意:MongoDB不会重新执行已提交的写入。
总数不包括在内部块迁移时的发生的可重试写入。
版本3.6.3中的新功能。
transactions.transactionsCollectionWriteCount:提交新的可重试写入语句时触发的对config.transactions 集合的写入总数。
对于更新和删除命令,由于只有单个文档操作可以重试,因此每个语句都有一个写入。
对于插入操作,插入的每批文档有一次写入,除非失败导致每个文档单独插入。
总数包括迁移发生时部分写入服务器config.transactions 集合的写入。
版本3.6.3中的新功能。
transactions.currentActive:当前正在执行命令的打开事务的总数。版本4.0.2中的新功能。
transactions.currentInactive:当前未执行命令的打开事务的总数。版本4.0.2中的新功能。
transactions.currentOpen:开放事务总数。当第一个命令作为该事务的一部分运行时,将打开一个事务,并在事务提交或中止之前保持打开状态。
版本4.0.2中的新功能。
transactions.totalAborted:自mongod进程上次启动以来在此服务器上中止的事务总数 。版本4.0.2中的新功能。
transactions.totalCommitted:自mongod进程上次启动以来在此服务器上提交的事务总数 。版本4.0.2中的新功能。
transactions.totalStarted:自mongod进程上次启动以来在此服务器上启动的事务总数 。版本4.0.2中的新功能。
transportSecurity ¶
在4.0.2版本新增功能:(3.6.7+和3.4.17+也有)
transportSecurity.<version>在4.0.2版本新增功能:(3.6.7+和3.4.17+也有)
mongod实例或mongos实例的累计TLS <version>连接数。重启后重置该值。
wiredTiger
wiredTiger仅在使用WiredTiger存储引擎时才会显示信息。一些统计信息,例如 wiredTiger.LSM,服务器roll up。
wiredTiger.uri:3.0版中的新功能。一个字符串。供MongoDB内部使用一个字符。
wiredTiger.LSM:3.0版中的新功能。返回LSM(Log-Structured Merge)树的统计信息的文档。这些值反映了此服务器中使用的所有LSM树的统计信息。
wiredTiger.async:3.0版中的新功能。返回与异步操作API相关的统计信息的文档。MongoDB没有使用它。
wiredTiger.block-manager:3.0版中的新功能。返回块管理器操作统计信息的文档。
wiredTiger.cache:3.0版中的新功能:返回缓存和缓存中页面移除的统计信息的文档。
以下描述了一些 wiredTiger.cache的key统计数据:
wiredTiger.cache.maximum bytes configured:最大缓存大小。
wiredTiger.cache.bytes currently in the cache:当前在缓存中的数据的字节大小。该值不应大于maximum bytesconfigured。
wiredTiger.cache.unmodified pages evicted:页面移除的主要统计数据。
wiredTiger.cache.tracked dirty bytes in the cache:缓存中脏数据的大小(以字节为单位)。该值应小于bytes currently in the cache。
wiredTiger.cache.pages read into cache:读入缓存的页数。 wiredTiger.cache.pages read intocache和wiredTiger.cache.pages written from cache可以提供I / O 信息。
wiredTiger.cache.pages written from cache:从缓存写入的页数。 wiredTiger.cache.pages written fromcache和wiredTiger.cache.pages read into cache可以提供I / O的信息。
要调整WiredTiger内部缓存的大小,请参阅storage.wiredTiger.engineConfig.cacheSizeGB和 --wiredTigerCacheSizeGB。避免将WiredTiger内部缓存大小增加到其默认值以上。
wiredTiger.connection:3.0版中的新功能。返回与WiredTiger连接相关的统计信息的文档。
wiredTiger.cursor:3.0版中的新功能。返回WiredTiger游标统计信息的文档。
wiredTiger.data-handle:3.0版中的新功能。返回有关数据句柄和扫描的统计信息的文档。
wiredTiger.log:3.0版中的新功能。返回WiredTiger的预写日志的统计信息的文档。
参阅:日记和WiredTiger存储引擎
wiredTiger.reconciliation:3.0版中的新功能。返回协调进程统计信息的文档。
wiredTiger.session:3.0版中的新功能。返回会话的打开游标计数和打开会话计数的文档。
wiredTiger.thread-yield:3.0版中的新功能。页面请求量的统计信息的文档。
wiredTiger.transaction:3.0版中的新功能。返回有关事务检查点和操作的统计信息的文档。
wiredTiger.transaction.transaction checkpoint most recent time:创建最新检查点的时间量(以毫秒为单位)。在固定写入负载下该值增加可能表示I / O系统饱和。
wiredTiger.concurrentTransactions:3.0版中的新功能。返回允许进入WiredTiger存储引擎的读写事务并发数的信息文档。这些设置是特定于MongoDB的。
要更改并发读取和写入事务的设置,请参阅wiredTigerConcurrentReadTransactions和wiredTigerConcurrentWriteTransactions。
writeBacksQueued :
“writeBacksQueued” : < boolean > ,
writeBacksQueued:
一个布尔值,指示是否有来自mongos实例排队等待重试的的操作 。通常,此值为false。另请参见writeBacks。
MEM
mem:报告mongod的系统架构和当前内存使用的文档 。
mem.bits:可选数字64或32,表示已编译的mongodb实例是32位还是64位体系结构。
mem.resident:该值mem.resident大致相当于数据库进程当前使用的RAM量(以兆字节(MB)为单位)。在正常使用期间,该值趋于增长。在专用数据库服务器中,此数字接近系统内存总量。
mem.virtual:mem.virtual显示mongod进程使用的虚拟内存的总量(以兆字节(MB)为单位)。
日志启用并且使用MMAPv1存储引擎,mem.virtual值至少两倍的mem.mapped。如果 mem.virtual值显着大于 mem.mapped(例如3倍或更多倍),则这可能表示内存泄漏。
mem.supported:一个布尔值,指示底层系统是否支持扩展内存信息。如果为false,表示系统不支持扩展内存信息,则数据库服务器可能无法访问其他 mem值。
mem.mapped:仅适用于MMAPv1存储引擎。数据库的映射内存量(以兆字节(MB)为单位)。由于MongoDB使用内存映射文件,因此该值可能大致等于数据库或数据库的总大小。
mem.mappedWithJournal:仅适用于MMAPv1存储引擎。映射内存量,以兆字节(MB)为单位,包括用于journaling的内存。该值始终是值的两倍 mem.mapped。仅在启用 journaling 功能时才包含此字段。
mem.note:mem.note如果mem.supported为false,则显示 该字段。
该mem.note字段显示文本:"not all mem info support on thisplatform”
metrics
metrics:返回反映当前使用情况和正在运行的mongod实例状态的各种统计信息的文档。
metrics.commands:3.0版中的新功能。报告数据库命令使用情况的文档。这些字段metrics.commands是数据库命令的名称,每个值都是一个文档,用于报告执行的命令总数以及失败的执行次数。
metrics.commands.<command>.failed:mongod中 <command>失败 的次数。
metrics.commands.<command>.total:mongod 中<command>执行 的次数。
metrics.document:反映文档访问和修改模式的文档。将这些值与opcounters 文档中的数据进行比较,该数据跟踪总操作数。
metrics.document.deleted:删除的文档总数。
metrics.document.inserted:插入的文档总数。
metrics.document.returned:查询返回的文档总数。
metrics.document.updated:更新的文件总数。
metrics.executor:版本3.2中的新功能。报告复制执行器的各种统计信息的文档。
metrics.getLastError:报告getLastError使用的文件。
metrics.getLastError.wtime:报告getLastError操作计数的文档,其w参数大于1。
metrics.getLastError.wtime.num:指定write concern(即w)的getLastError 操作总数,即等待副本集的一个或多个成员确认写入操作(即w大于1)。
metrics.getLastError.wtime.totalMillis:指定write concern(即w)mongod写操作操作所花费的总时间(以毫秒为单位w),即等待副本集的一个或多个成员确认写操作(即w大于1)。
metrics.getLastError.wtimeouts:write concern操作由于wtimeout阈值而 超时到中getLastError的次数。
metrics.operation:用于保存MongoDB使用特定操作类型处理的几种类型的更新和查询操作的计数器文档。
metrics.operation.fastmod:在3.4中删除。如果使用MMAPv1存储引擎,那么更新操作数既不会导致文档增长也不需要更新索引。例如,此计数器将记录更新操作,使用$inc 操作使用运算符来递增未被索引的字段的值。
metrics.operation.idhack:在3.4中删除。包含该_id字段的查询数。对于这些查询,MongoDB将在该_id字段上使用默认索引并跳过所有查询执行计划。
metrics.operation.scanAndOrder:返回无法使用索引的排序操作的已排序数目的查询总数。
metrics.operation.writeConflicts:遇到写入冲突的查询总数。
metrics.queryExecutor:报告来自查询执行系统数据的文档。
metrics.queryExecutor.scanned:在查询和查询计划评估期间索引扫描的总数。此计数器totalKeysExamined与输出中的 计数器相同 explain()。
metrics.queryExecutor.scannedObjects:查询和查询计划评估期间扫描的文档总数。此计数器totalDocsExamined与explain()输出中的 计数器相同 。
metrics.record:报告与磁盘存储文件中的记录分配相关的数据的文档。
metrics.record.moves:对于MMAPv1存储引擎,metrics.record.moves 报告文档在MongoDB数据集的磁盘表示内移动的总次数。文档移动是因为操作会增加文档大小超出其分配的记录大小。
metrics.repl:报告与复制过程相关的指标的文档。 metrics.repl文档出现在所有mongod实例上,包括副本集成员的实例 。
metrics.repl.apply:从复制oplog应用到应用程序的文档。
metrics.repl.apply.batchSize:版本4.0.6中的新功能:(也可在3.6.11+中使用)
应用的oplog操作总数。该 metrics.repl.apply.batchSize在批量操作边界时的操作数目递增,而不是每次操作后递增。
要获得更精细的粒度,请参阅metrics.repl.apply.ops。
metrics.repl.apply.batches:metrics.repl.apply.batches报告在副本集的secondary成员上的oplog应用进程。有关oplog应用程序进程的更多信息,请参见 多线程复制
metrics.repl.apply.batches.num:所有数据库中应用的批次总数。
metrics.repl.apply.batches.totalMillis
mongod从oplog应用操作所花费的总时间(以毫秒为单位)。
metrics.repl.apply.ops:应用的oplog操作总数。 metrics.repl.apply.ops每次操作后递增。参阅:metrics.repl.apply.batchSize
metrics.repl.buffer:
在批量应用oplog条目之前,MongoDB会从复制源缓冲区中缓冲oplog操作。metrics.repl.buffer提供了一种跟踪oplog缓冲区的方法。有关oplog应用程序进程的更多信息,请参见 多线程复制。
metrics.repl.buffer.count:oplog缓冲区中的当前操作数。
metrics.repl.buffer.maxSizeBytes:缓冲区的最大大小。此值是mongod的常量设置,不可配置。
metrics.repl.buffer.sizeBytes:oplog缓冲区内容的当前大小。
metrics.repl.network:metrics.repl.network 报告复制过程的网络信息。
metrics.repl.network.bytes:metrics.repl.network.bytes 报告从复制同步源读取的数据总量。
metrics.repl.network.getmores:metrics.repl.network.getmores报告 getmore操作,oplog复制进程中oplog 游标的额外请求结果。
metrics.repl.network.getmores.num:metrics.repl.network.getmores.num报告getmore操作总数,从复制同步源请求其他操作的操作。
metrics.repl.network.getmores.totalMillis: 报告从getmore操作中收集数据所需的总时间 。
注意
这个数字可能非常大,因为即使getmore操作没有初始返回数据,MongoDB也会等待更多数据。
metrics.repl.network.ops:metrics.repl.network.ops 报告从复制源读取的操作总数。
metrics.repl.network.readersCreated:metrics.repl.network.readersCreated报告创建的oplog查询进程的总数。将在连接中发生错误(包括超时或网络操作)时,MongoDB将创建新的oplog查询。此外,metrics.repl.network.readersCreated每次MongoDB选择新的复制源时, 都会递增。
metrics.repl.preload: metrics.repl.preload 报告“预读”阶段,其中MongoDB将文档和索引加载到RAM中以提高复制吞吐量。有关复制过程的预读阶段的详细信息,请参阅多线程复制。
metrics.repl.preload.docs:报告在预读阶段加载到内存中的文档的文档。
metrics.repl.preload.docs.num:在复制的预读阶段加载的文档总数。
metrics.repl.preload.docs.totalMillis:复制预取阶段加载文档所花费的总时间。
metrics.repl.preload.indexes:在复制预读阶段报告加载到内存中的索引项的文档。有关预取复制阶段的详细信息,请参阅多线程复制。
metrics.repl.preload.indexes.num:作为复制预取阶段的一部分,在更新文档之前由成员加载的索引条目总数。
metrics.repl.preload.indexes.totalMillis:作为复制预读阶段的一部分,加载索引条目所花费的总时间(以毫秒为单位)。
metrics.storage.freelist.search.bucketExhausted:mongod已检查空闲列表中没有找到合适的大记录分配的次数。
metrics.storage.freelist.search.requests:mongod搜索可用记录分配的次数。
metrics.storage.freelist.search.scanned:mongod搜索可用记录分配的数量。
metrics.ttl:报告ttl索引进程的资源使用的文档 。
metrics.ttl.deletedDocuments:使用ttl索引从集合中删除的文档总数 。
metrics.ttl.passes:后台进程使用ttl索引从集合中删除文档的次数。
metrics.cursor:2.6版中的新功能。有关游标状态和使用的数据的文档。
metrics.cursor.timedOut:2.6版中的新功能。自服务器进程启动以来已超时的游标总数。如果此数字很大或以常规速率增长,则可能表示应用程序错误。
metrics.cursor.open:2.6版中的新功能。有关打开游标的数据的文档。
metrics.cursor.open.noTimeout:2.6版中的新功能。打开游标的数量,选项 DBQuery.Option.noTimeout设置为在一段时间不活动后防止超时。
metrics.cursor.open.pinned:2.6版中的新功能。“固定”打开游标的数量。
metrics.cursor.open.total:2.6版中的新功能。MongoDB为客户端维护的游标数量。因为MongoDB耗尽了未使用的游标,通常这个值很小或为零。但是,如果存在队列,过时的tailable游标或大量操作,则此值可能会上升。
metrics.cursor.open.singleTarget:3.0版中的新功能。仅针对单个分片的游标总数。仅 mongos实例报告metrics.cursor.open.singleTarget值。
metrics.cursor.open.multiTarget:3.0版中的新功能。仅针对多个分片的游标总数。仅mongos实例报告metrics.cursor.open.multiTarget值。
watchdog
版本3.6中的新功能。
复制
注意
watchdog仅当启用了存储节点监视程序时,该部分才会出现。
watchdog:报告存储节点监视程序状态的文档 。
watchdog.checkGeneration:自启动以来检查目录的次数。每个monitoringPeriod目录都会被多次检查。
watchdog.monitorGeneration:mongod 检查文件系统状态的次数。每个monitoringPeriod增加一次。
watchdog.monitorPeriod:watchdogPeriodSeconds设置的值。这表示状态检查之间的时间段。
文章转载自公众号: Mongoing中文社区