Definição
connPoolStatsThe command
connPoolStatsreturns information regarding the open outgoing connections from the current database instance to other members of the sharded cluster or replica set.Para executar
connPoolStats, use o métododb.runCommand( { <command> } ).Observação
connPoolStatsonly returns meaningful results formongosinstances and formongodinstances in sharded clusters.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Sintaxe
O comando tem a seguinte sintaxe:
db.runCommand( { connPoolStats: 1 } )
O valor do argumento (ou seja, 1 ) não afeta a saída do comando.
Comportamento
connPoolStats inclui estatísticas agregadas em sua saída:
The
hostsfield displays the information aggregated by host.The
poolsfield displays the information aggregated by pool.
Observação
To avoid interference with any running operations, connPoolStats does not take any locks. As such, the counts may change slightly as connPoolStats gathers information, resulting in slight differences between the hosts and pools connection counts.
Exemplo
A seguinte operação utiliza o métododb.runCommand()para executar o comandoconnPoolStatsem ummongosde um cluster fragmentado. O cluster fragmentado tem 2 shards, cada um um conjunto de réplicas de um único membro, e um conjunto de réplicas de servidor de configuração . Omongosé executado em uma máquina 4-core.
db.runCommand( { "connPoolStats" : 1 } )
O comando retorna a saída do seguinte formulário:
Observação
The connPoolStats output varies depending on the deployment and the member against which you run connPoolStats among other factors.
{ "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> }
Saída
connPoolStats.totalAvailableInforma o número total de conexões de saída disponíveis da instância
mongod/mongosatual para outros membros do cluster fragmentado ou conjunto de réplicas.
connPoolStats.totalLeasedRelata o número total de conexões emprestadas de um pool e esperadas para retornar. Essas conexões podem não permanecer ativas durante a duração de uma concessão e são excluídas das métricas relacionadas. Essas conexões estão indisponíveis durante a duração do aluguel.
connPoolStats.totalCreatedRelata o número total de conexões de saída já criadas pela instância
mongod/mongosatual para outros membros do cluster fragmentado ou conjunto de réplicas.
connPoolStats.totalInUseRelata o número total de conexões de saída da instância atual do
mongod/mongospara outros membros do cluster fragmentado ou conjunto de réplicas que estão atualmente em uso.
connPoolStats.totalRefreshingRelata o número total de conexões de saída da instância
mongod/mongosatual para outros membros do cluster fragmentado ou conjunto de réplicas que estão sendo atualizados no momento.
connPoolStats.totalWasNeverUsedRelata o número total de conexões de saída da instância atual do
mongod/mongospara outros membros do cluster fragmentado ou conjunto de réplicas que foram fechados sem nunca terem sido usados.
connPoolStats.replicaSetMatchingStrategyNovidade na versão 5.0.
Em uma instância
mongos, esse valor reporta a política usada pela instância para determinar o limite de tamanho mínimo de seu pool de conexões para nós dentro dos conjuntos de réplicas.Em uma instância
mongod, esse valor reporta a política usada pela instância para determinar o limite de tamanho mínimo de seus pool de conexões para nós dentro de outros conjuntos de réplicas.A política para
mongosemongodpode ser definida com o parâmetroShardingTaskExecutorPoolReplicaSetMatching.Observação
If the
ShardingTaskExecutorPoolReplicaSetMatchingis set to"automatic", thereplicaSetMatchingStrategystill describes the actual policy being used, not"automatic". To find the value of theShardingTaskExecutorPoolReplicaSetMatching, usegetParameterwhich returns the value of the server parameter:db.adminCommand( { getParameter : 1, "ShardingTaskExecutorPoolReplicaSetMatching" : 1 } )
connPoolStats.acquisitionWaitTimesNovidades na versão 6.3.
O documento relata um histograma com os tempos de espera para as solicitações adquirirem uma conexão de
mongosamongod:O documento contém faixas de tempo em milissegundos e o número de solicitações de conexão em cada faixa.
-infé infinito negativo e as solicitações de conexão na faixa(-inf, 0ms)não esperaram.infé infinito positivo e as solicitações de conexão no intervalo[1000ms, inf)esperaram um tempo maior ou igual a 1.000 milissegundos.totalCounté o número total de solicitações de conexão para todos os intervalos de tempo.
"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 o número de conexões síncronas de saída ativas e armazenadas da instância
mongod/mongosatual para outros membros do cluster fragmentado ou conjunto de réplicas.These connections are a part of a pool that is a subset of the data reported by
totalAvailable,totalCreated, andtotalInUse.
connPoolStats.numAScopedConnectionInforma o número de conexões síncronas com escopo de saída ativas e armazenadas da instância
mongod/mongosatual para outros membros do cluster fragmentado ou conjunto de réplicas.These connections are a part of a pool that is a subset of the data reported by
totalAvailable,totalCreated, andtotalInUse.
connPoolStats.poolsRelatórios sobre estatísticas de conexão (em uso/disponível/criada/atualizada) agrupadas pelo pool de conexões. A
mongodormongoshas two distinct families of outgoing connection pools:Pools baseados em DBClient (o "caminho de gravação") e
Pools baseados em NetworkInterfaceTL (o "caminho de leitura").
Para cada pool, o comando retorna um documento semelhante ao seguinte:
{ "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 }, ... } Observação
If there are no connections (in use/available/created/refreshing) for a particular pool, the
connPoolStatsdoes not return statistics for that pool.connPoolStats.pools.NetworkInterfaceTL-TaskExecutorPool-[n]Exibe estatísticas de conexão relacionadas aos pools do TaskExecutor. Normalmente, haverá um TaskExecutorPool por núcleo, por exemplo
pools.NetworkInterfaceTL-TaskExecutorPool-0...pools.NetworkInterfaceTL-TaskExecutorPool-7para um processador de 8 núcleos.
connPoolStats.pools.NetworkInterfaceTL-ShardRegistryDisponível se o comando for executado em um nó de um cluster fragmentado.
Exibe as estatísticas do pool para as conexões entre a instância
mongod/mongosatual e outros membros do cluster fragmentado.
connPoolStats.pools.NetworkInterfaceTL-ReplicationDisponível se o comando for executado em um membro de um conjunto de réplicas.
Exibe as estatísticas do pool para as conexões entre a instância do
mongodatual e os outros nós do conjunto de réplicas.
connPoolStats.pools.[pool].poolWasNeverUsedExibe o número de conexões neste pool de conexões que foram fechadas sem nunca terem sido usadas.
connPoolStats.pools.[pool].acquisitionWaitTimesNovidades na versão 6.3.
Reports the wait times for requests to acquire a connection from
mongostomongod. For details, seeconnPoolStats.acquisitionWaitTimes.
connPoolStats.hostsRelatórios sobre estatísticas de conexão (em uso/disponível/criado/atualizando) agrupados pelos hosts.
Contém documentos que representam um relatório de conexões entre a instância
mongod/mongosatual e cada membro do cluster fragmentado ou conjunto de réplicas.connPoolStats.hosts.[host].availableInforma o número total de conexões disponíveis para conexão ao
[host].
connPoolStats.hosts.[host].leasedRelata o número total de conexões com o host solicitadas de um pool e esperadas para retornar. Essas conexões podem não permanecer ativas durante a duração de uma concessão e são excluídas das métricas relacionadas. Essas conexões estão indisponíveis durante a duração do aluguel.
connPoolStats.hosts.[host].inUseInforma o número de conexões com o
[host]que estão em uso no momento.
connPoolStats.hosts.[host].wasNeverUsedRelata o número total de conexões de saída de
hostpara outros membros do cluster fragmentado ou conjunto de réplicas que foram fechadas sem nunca terem sido usadas.
connPoolStats.hosts.[host].acquisitionWaitTimesNovidades na versão 6.3.
Reports the wait times for requests to acquire a connection from
mongostomongod. For details, seeconnPoolStats.acquisitionWaitTimes.
connPoolStats.replicaSetsContém documentos que representam um relatório de informações relacionadas a cada conjunto de réplicas conectado ao
mongod/mongosatual.connPoolStats.replicaSets.replicaSetRelatórios sobre cada conjunto de réplica conectado ao atual
mongod/mongos.
connPoolStats.replicaSets.[replicaSets].hostsContém uma array de documentos que reporta cada membro no conjunto de réplicas.
Esses valores derivam dos valores de status do conjunto de réplicas .
connPoolStats.replicaSets.[replicaSet].hosts[n].addrInforma o endereço do nó no conjunto de réplicas no formato
[hostname]:[port].
connPoolStats.replicaSets.[replicaSet].hosts[n].okInforma
falsequando:Este campo é para uso interno.
connPoolStats.replicaSets.[replicaSet].hosts[n].ismasterReports
trueif thishostis the primary member of the replica set.
connPoolStats.replicaSets.[replicaSet].hosts[n].hiddenReports
trueif thishostis a hidden member of the replica set.
connPoolStats.replicaSets.[replicaSet].hosts[n].secondaryReports
trueif thishostis a secondary member of the replica set.
connPoolStats.replicaSets.[replicaSet].hosts[n].pingTimeMillisReports the ping time in milliseconds from the
mongosormongodto thishost.
connPoolStats.replicaSets.[replicaSet].hosts[n].tagsRelata o
members[n].tags, se esse membro do conjunto tiver tags configuradas.
Consulte também Resposta para detalhes sobre o campo de status do ok, o campo operationTime e o campo $clusterTime.