Definición
connPoolStatsEl comando
connPoolStatsDevuelve información sobre las conexiones salientes abiertas desde la instancia actual de la base de datos a otros nodos de la clúster o set de réplicas.Para ejecutar
connPoolStats, utiliza el métododb.runCommand( { <command> } ).Nota
connPoolStatssolo devuelve resultados significativos para las instancias demongosy para las instancias demongoden clústeres fragmentados.
Compatibilidad
Este comando está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Nota
Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.
MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB
MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.
Sintaxis
El comando tiene la siguiente sintaxis:
db.runCommand( { connPoolStats: 1 } )
El valor del argumento (es decir, 1 ) no afecta el resultado del comando.
Comportamiento
connPoolStats incluye estadísticas agregadas en su salida:
El campo
hostsmuestra la información agregada por host.El campo muestra la información agregada por
poolsgrupo.
Nota
Para evitar interferencias con cualquier operación en ejecución, connPoolStats no toma ningún bloqueo. Como tal, los recuentos pueden cambiar ligeramente a medida que connPoolStats recopila información, lo que resulta en ligeras diferencias entre los recuentos de conexión de hosts y pools.
Ejemplo
La siguiente operación utiliza el método db.runCommand() para ejecutar el comando connPoolStats en un mongos de un clúster particionado. El clúster tiene 2 particiones, cada uno un set de réplicas de un solo nodo, y un set de réplicas de servidor de configuración. El mongos se ejecuta en una máquina de 4núcleos.
db.runCommand( { "connPoolStats" : 1 } )
El comando retorna la salida del siguiente formulario:
Nota
La connPoolStats salida varía según la implementación y el nodo contra el que se ejecuta connPoolStats y otros factores.
{ "numClientConnections" : <num>, "numAScopedConnections" : <num>, "totalInUse" : <num>, "totalAvailable" : <num>, "totalLeased" : <num>, "totalCreated" : <num>, "totalRefreshing" : <num>, "replicaSetMatchingStrategy" : <string>, "acquisitionWaitTimes" : { // Added in MongoDB 6.3 "(-inf, 0ms)" : { "count" : <num> }, "[0ms, 50ms)" : { "count" : <num> }, "[50ms, 100ms)" : { "count" : <num> }, "[100ms, 150ms)" : { "count" : <num> }, "[150ms, 200ms)" : { "count" : <num> }, "[200ms, 250ms)" : { "count" : <num> }, "[250ms, 300ms)" : { "count" : <num> }, "[300ms, 350ms)" : { "count" : <num> }, "[350ms, 400ms)" : { "count" : <num> }, "[400ms, 450ms)" : { "count" : <num> }, "[450ms, 500ms)" : { "count" : <num> }, "[500ms, 550ms)" : { "count" : <num> }, "[550ms, 600ms)" : { "count" : <num> }, "[600ms, 650ms)" : { "count" : <num> }, "[650ms, 700ms)" : { "count" : <num> }, "[700ms, 750ms)" : { "count" : <num> }, "[750ms, 800ms)" : { "count" : <num> }, "[800ms, 850ms)" : { "count" : <num> }, "[850ms, 900ms)" : { "count" : <num> }, "[900ms, 950ms)" : { "count" : <num> }, "[950ms, 1000ms)" : { "count" : <num> }, "[1000ms, inf)" : { "count" : <num> }, "totalCount" : <num> }, "pools" : { "NetworkInterfaceTL-TaskExecutorPool-0" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, }, "NetworkInterfaceTL-TaskExecutorPool-1" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } }, "NetworkInterfaceTL-TaskExecutorPool-2" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } }, "NetworkInterfaceTL-TaskExecutorPool-3" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } }, "NetworkInterfaceTL-ShardRegistry" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg2.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg3.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard1.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard2.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } }, "global" : { "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "cfg3.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg2.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard2.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard1.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } } }, "hosts" : { "cfg3.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg1.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "cfg2.example.net:27019" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard2.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "shard1.example.net:27018" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 } }, "replicaSets" : { "csRS" : { "hosts" : [ { "addr" : "cfg1.example.net:27019", "ok" : <bool>, "ismaster" : <bool>, "hidden" : <bool>, "secondary" : <bool>, "pingTimeMillis" : <num> }, { "addr" : "cfg2.example.net:27019", "ok" : <bool>, "ismaster" : <bool>, "hidden" : <bool>, "secondary" : <bool>, "pingTimeMillis" : <num> }, { "addr" : "cfg3.example.net:27019", "ok" : <bool>, "ismaster" : <bool>, "hidden" : <bool>, "secondary" : <bool>, "pingTimeMillis" : <num> } ] }, "shardB" : { "hosts" : [ { "addr" : "shard2.example.net:27018", "ok" : <bool>, "ismaster" : <bool>, "hidden" : <bool>, "secondary" : <bool>, "pingTimeMillis" : <num> } ] }, "shardA" : { "hosts" : [ { "addr" : "shard1.example.net:27018", "ok" : <bool>, "ismaster" : <bool>, "hidden" : <bool>, "secondary" : <bool>, "pingTimeMillis" : <num> } ] } }, "ok" : 1, "$clusterTime" : { "clusterTime" : <timestamp>, "signature" : <document> }, "operationTime" : <timestamp> }
Salida
connPoolStats.totalAvailableInforma el número total de conexiones salientes disponibles desde la instancia actual de
mongod/mongosa otros nodos del clúster o del set de réplicas.
connPoolStats.totalLeasedInforma sobre el número total de conexiones tomadas de un pool y que se espera que regresen. Es posible que estas conexiones no permanezcan activas durante la totalidad de un alquiler y se excluyan de las métricas relacionadas. Estas conexiones no están disponibles durante la duración del contrato de arrendamiento .
connPoolStats.totalCreatedInforma el número total de conexiones salientes que ha creado la instancia actual
mongod/ conmongosotros nodos del clúster o set de réplicas.
connPoolStats.totalInUseInforma la cantidad total de conexiones salientes desde la instancia actual
mongod/ a otrosmongosmiembros del clúster fragmentado o del conjunto de réplicas que están actualmente en uso.
connPoolStats.totalRefreshingInforma la cantidad total de conexiones salientes desde la instancia actual
mongod/ a otrosmongosmiembros del clúster fragmentado o del conjunto de réplicas que se están actualizando actualmente.
connPoolStats.totalWasNeverUsedInforma el número total de conexiones salientes de la instancia actual
mongod/mongosa otros nodos del clúster o set de réplicas que se cerraron sin haber sido nunca utilizadas.
connPoolStats.replicaSetMatchingStrategyNuevo en la versión 5.0.
En una instancia, este valor informa la política utilizada por la instancia para determinar el límite de tamaño mínimo de sus grupos de conexiones a los nodos dentro de los conjuntos de
mongosréplicas.En una instancia, este valor informa la política utilizada por la instancia para determinar
mongodel límite de tamaño mínimo de sus grupos de conexiones a nodos dentro de otros conjuntos de réplicas.La política para
mongosy se puedemongodShardingTaskExecutorPoolReplicaSetMatchingconfigurar con el parámetro.Nota
Si el
ShardingTaskExecutorPoolReplicaSetMatchingestá configurado en"automatic", elreplicaSetMatchingStrategyaún describe la política real que se está utilizando, no"automatic". Para encontrar el valor delShardingTaskExecutorPoolReplicaSetMatching, utilizagetParameterque devuelve el valor del parámetro del servidor:db.adminCommand( { getParameter : 1, "ShardingTaskExecutorPoolReplicaSetMatching" : 1 } )
connPoolStats.acquisitionWaitTimesNuevo en la versión 6.3.
El informe del documento muestra un histograma con los tiempos de espera para las solicitudes de adquisición de una conexión desde
mongoshastamongod:El documento contiene intervalos de tiempo en milisegundos y la cantidad de solicitudes de conexión en cada rangos.
-infes menos infinito y las solicitudes de conexión en el rango(-inf, 0ms)no esperaron.infes positivo infinito, y las solicitudes de conexión en el rango[1000ms, inf)esperaron un tiempo mayor o igual a 1,000 milisegundos.totalCountes el número total de solicitudes de conexión para todos los intervalos de tiempo.
"acquisitionWaitTimes" : { "(-inf, 0ms)" : { "count" : <num> }, "[0ms, 50ms)" : { "count" : <num> }, "[50ms, 100ms)" : { "count" : <num> }, "[100ms, 150ms)" : { "count" : <num> }, "[150ms, 200ms)" : { "count" : <num> }, "[200ms, 250ms)" : { "count" : <num> }, "[250ms, 300ms)" : { "count" : <num> }, "[300ms, 350ms)" : { "count" : <num> }, "[350ms, 400ms)" : { "count" : <num> }, "[400ms, 450ms)" : { "count" : <num> }, "[450ms, 500ms)" : { "count" : <num> }, "[500ms, 550ms)" : { "count" : <num> }, "[550ms, 600ms)" : { "count" : <num> }, "[600ms, 650ms)" : { "count" : <num> }, "[650ms, 700ms)" : { "count" : <num> }, "[700ms, 750ms)" : { "count" : <num> }, "[750ms, 800ms)" : { "count" : <num> }, "[800ms, 850ms)" : { "count" : <num> }, "[850ms, 900ms)" : { "count" : <num> }, "[900ms, 950ms)" : { "count" : <num> }, "[950ms, 1000ms)" : { "count" : <num> }, "[1000ms, inf)" : { "count" : <num> }, "totalCount" : <num> }
connPoolStats.numClientConnectionInforma el número de conexiones síncronas activas y almacenadas salientes de la instancia actual de
mongod/mongosa otros miembros del clúster o set de réplicas.Estas conexiones forman parte de un conjunto que es un subconjunto de los datos informados por
totalAvailable,totalCreatedytotalInUse.
connPoolStats.numAScopedConnectionInforma la cantidad de conexiones sincrónicas salientes activas y almacenadas desde la instancia actual
mongod/ a otrosmongosmiembros del clúster fragmentado o del conjunto de réplicas.Estas conexiones forman parte de un conjunto que es un subconjunto de los datos informados por
totalAvailable,totalCreatedytotalInUse.
connPoolStats.poolsInformes sobre las estadísticas de conexión (en uso/disponibles/creadas/actualizándose) agrupadas por grupos de conexiones. Un
mongodo unmongostienen dos familias distintas de grupos de conexiones salientes:Pools basados en DBClient (la "ruta de escritura") y
Grupos basados en NetworkInterfaceTL (la "ruta de lectura").
Para cada pool, el comando devuelve un documento que se asemeja al siguiente:
{ "poolInUse" : <num>, "poolAvailable" : <num>, "poolLeased" : <num>, "poolCreated" : <num>, "poolRefreshing" : <num>, "acquisitionWaitTimes" : <document>, // Added in MongoDB 6.3 "[host1]" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, "[host2]" : { "inUse" : <num>, "available" : <num>, "leased" : <num>, "created" : <num>, "refreshing" : <num>, "acquisitionWaitTimes" : <document> // Added in MongoDB 6.3 }, ... } Nota
Si no hay conexiones (en uso/disponibles/creadas/actualizándose) para un grupo en particular, el
connPoolStatsno devuelve estadísticas para ese grupo.connPoolStats.pools.NetworkInterfaceTL-TaskExecutorPool-[n]Muestra estadísticas de conexión relacionadas con los pools de TaskExecutor. Típicamente, habrá un TaskExecutorPool por core, p. ej.
pools.NetworkInterfaceTL-TaskExecutorPool-0...pools.NetworkInterfaceTL-TaskExecutorPool-7para un procesador de 8 núcleos.
connPoolStats.pools.NetworkInterfaceTL-ShardRegistryDisponible si el comando se ejecuta en un nodo de un clúster fragmentado.
Muestra las estadísticas del conjunto de conexiones entre la instancia
mongod/mongosactual y otros miembros del clúster.
connPoolStats.pools.NetworkInterfaceTL-ReplicationDisponible si el comando se ejecuta en un miembro de un conjunto de réplicas.
Muestra las estadísticas del pool para las conexiones entre la instancia actual de
mongody los demás nodos del set de réplicas.
connPoolStats.pools.[pool].poolWasNeverUsedMuestra la cantidad de conexiones en este grupo de conexiones que se cerraron sin haber sido utilizadas.
connPoolStats.pools.[pool].acquisitionWaitTimesNuevo en la versión 6.3.
Informa el tiempo de espera de las solicitudes para adquirir una conexión desde
mongosamongod. Para más detalles, consulteconnPoolStats.acquisitionWaitTimes.
connPoolStats.hostsInforma sobre estadísticas de conexión (en uso/disponibles/creadas/refrescándose) agrupadas por los hosts.
Contiene documentos que representan un informe de conexiones entre la instancia
mongod/mongosactual y cada miembro del clúster fragmentado o conjunto de réplicas.connPoolStats.hosts.[host].availableInforma del número total de conexiones disponibles para conectarse al
[host].
connPoolStats.hosts.[host].leasedInforma el número total de conexiones al host tomadas de un grupo y que se espera que sean devueltas. Es posible que estas conexiones no permanezcan activas durante todo el tiempo de la reserva y se excluyan de las métricas relacionadas. Estas conexiones no están disponibles durante la vigencia de la reserva.
connPoolStats.hosts.[host].inUseInforma la cantidad de conexiones al
[host]que están actualmente en uso.
connPoolStats.hosts.[host].wasNeverUsedInforma la cantidad total de conexiones salientes desde
hosta otros miembros del clúster fragmentado o del conjunto de réplicas que se cerraron sin haber sido utilizadas.
connPoolStats.hosts.[host].acquisitionWaitTimesNuevo en la versión 6.3.
Informa el tiempo de espera de las solicitudes para adquirir una conexión desde
mongosamongod. Para más detalles, consulteconnPoolStats.acquisitionWaitTimes.
connPoolStats.replicaSetsContiene documentos que representan un informe de información relacionada con cada conjunto de réplicas conectado al
mongod/mongosactual.connPoolStats.replicaSets.replicaSetInformes sobre cada set de réplicas conectado al actual
mongod/mongos.
connPoolStats.replicaSets.[replicaSets].hostsContiene un arreglo de documentos que reporta sobre cada nodo del set de réplicas..
Estos valores derivan de los valores de estado del conjunto de réplicas.
connPoolStats.replicaSets.[replicaSet].hosts[n].addrInforma la dirección del nodo en el set de réplicas en formato
[hostname]:[port].
connPoolStats.replicaSets.[replicaSet].hosts[n].okInforma
falsecuando:El
mongosomongodactual no puede conectarse a la instancia.el
mongosactual omongodrecibieron una excepción o error de conexión.
Este campo es para uso interno.
connPoolStats.replicaSets.[replicaSet].hosts[n].ismasterInforma
truesi estehostes el primario miembro del set de réplicas.
connPoolStats.replicaSets.[replicaSet].hosts[n].hiddenInforma
truesi estehostes un miembro oculto del set de réplicas.
connPoolStats.replicaSets.[replicaSet].hosts[n].secondaryInforma
truesi estehostes un miembro secundario del conjunto de réplicas.
connPoolStats.replicaSets.[replicaSet].hosts[n].pingTimeMillisInforma el tiempo de ping en milisegundos desde el
mongosomongoda estehost.
connPoolStats.replicaSets.[replicaSet].hosts[n].tagsInforma el
members[n].tags, si este nodo del conjunto tiene etiquetas configuradas.
Consulta también Respuesta para obtener detalles sobre el campo de estado ok, el campo operationTime y el campo $clusterTime.