connPoolStats¶该命令connPoolStats返回有关从当前数据库实例到分片群集或
副本集的其他成员的打开的传出连接的信息。
要运行connPoolStats,请使用方法。db.runCommand( { <command> } )
注意
connPoolStats仅针对mongos实例和分片mongod群集中的实例返回有意义的结果
。
该命令采用以下形式:
参数的值(即1)不会影响命令的输出。
connPoolStats 在其输出中包括汇总的统计信息:
注意
为避免干扰任何正在运行的操作,
connPoolStats请勿进行任何锁定。因此,计数在connPoolStats收集信息时可能会略有变化,从而导致
连接计数hosts和pools连接计数之间略有差异
。
以下操作使用该db.runCommand()方法connPoolStats在分片mongos群集的a 上运行命令。分片群集具有2个分片,每个分片都是一个单成员副本集和一个配置服务器副本集。在mongos
一个4核的机器上运行。
该命令返回以下形式的输出:
注意
该connPoolStats输出取决于部署和针对其运行成员
connPoolStats其他因素。
connPoolStats.numClientConnection¶报告
从当前/ 实例到分片群集或副本集其他成员的活动和存储的传出同步连接数。mongodmongos
这些连接池是通过报告的数据子集的一部分totalAvailable,
totalCreated和totalInUse。
connPoolStats.numAScopedConnection¶报告从当前/ 实例到分片群集或副本集的其他成员
的活动和存储的传出作用域范围的同步连接数
。mongodmongos
这些连接池是通过报告的数据子集的一部分totalAvailable,
totalCreated和totalInUse。
connPoolStats.pools¶按连接池分组的连接统计信息(正在使用/可用/已创建/刷新)报告。一个
mongod或mongos有传出连接池的两个不同的家族:
对于每个池,该命令将返回类似于以下内容的文档:
注意
如果特定池没有连接(正在使用/可用/已创建/刷新),connPoolStats则不会返回该池的统计信息。
connPoolStats.pools.NetworkInterfaceTL-TaskExecutorPool-[n]¶显示与TaskExecutor池相关的连接静态信息。通常,每个内核有一个TaskExecutorPool,例如
NetworkInterfaceTL-TaskExecutorPool-0…
NetworkInterfaceTL-TaskExecutorPool-7
对于一个8内核处理器。
也可以看看
connPoolStats.pools.NetworkInterfaceTL-ShardRegistry¶如果命令在分片群集的成员上运行,则可用。
connPoolStats.pools.NetworkInterfaceTL-Replication¶如果命令在副本集的成员上运行,则可用。
显示当前mongod实例与副本集的其他成员之间的连接的池统计信息。
connPoolStats.pools.global¶显示基于DBClient的池统计信息。
connPoolStats.hosts¶报告按主机分组的连接统计信息(正在使用/可用/已创建/刷新)。
包含代表当前/ 实例与分片群集或副本集的每个成员之间的连接的报告的文档。mongodmongos
connPoolStats.hosts.[host].available¶报告可用于连接到的连接总数[host]。
connPoolStats.hosts.[host].created¶报告与已[host] 创建的连接数。
connPoolStats.hosts.[host].inUse¶报告[host]
当前正在使用的连接数。
connPoolStats.replicaSets¶包含代表与当前/ 连接的每个副本集有关的信息报告的
文档。mongodmongos
connPoolStats.replicaSets.[replicaSets].hosts¶这些值来自副本集状态值。
connPoolStats.replicaSets.[replicaSet].hosts[n].ok¶false在以下情况下报告:
此字段仅供内部使用。
connPoolStats.replicaSets.[replicaSet].hosts[n].pingTimeMillis¶报告members[n].tags,如果集合的此成员已配置标签。
另请参阅响应,以获取有关ok状态字段,operationTime字段和$clusterTime字段的详细信息。