Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

connPoolStats

Nesta página

  • Definição
  • Compatibilidade
  • Sintaxe
  • Comportamento
  • Exemplo
  • Saída
connPoolStats

O comando connPoolStats retorna informações sobre as conexões de saída abertas da instância do banco de dados de dados atual para outros membros docluster fragmentado ou conjunto de réplicas.

Para executar connPoolStats, use o método db.runCommand( { <command> } ).

Observação

connPoolStats só retorna resultados significativos para instâncias mongos e para instâncias mongod em clusters fragmentados.

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 para todos os comandos, consulte Comandos sem suporte.

  • 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

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.

connPoolStats inclui estatísticas agregadas em sua saída:

  • O campo hosts exibe as informações agregadas por host.

  • O campo pools exibe as informações agregadas por grupo.

Observação

Para evitar interferência em qualquer operação em andamento, connPoolStats não usa nenhum bloqueio. Assim, as contagens podem mudar ligeiramente à medida que connPoolStats coleta informações, resultando em pequenas diferenças entre as contagens de conexões hosts e pools .

A seguinte operação utiliza o método db.runCommand() para executar o comando connPoolStats em um mongos de um cluster fragmentado. O cluster fragmentado tem 2 shards, cada um deles um conjunto de réplicas de um único membro, e um conjunto de réplicas de servidor de configuração de configuração. O mongos é executado em uma máquina 4-core.

db.runCommand( { "connPoolStats" : 1 } )

O comando retorna a saída do seguinte formulário:

Observação

A saída connPoolStats varia dependendo do sistema e do membro em relação ao qual você executa connPoolStats , entre outros fatores.

{
"numClientConnections" : <num>,
"numAScopedConnections" : <num>,
"totalInUse" : <num>,
"totalAvailable" : <num>,
"totalCreated" : <num>,
"totalRefreshing" : <num>,
"replicaSetMatchingStrategy" : <string>,
"pools" : {
"NetworkInterfaceTL-TaskExecutorPool-0" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"NetworkInterfaceTL-TaskExecutorPool-1" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"NetworkInterfaceTL-TaskExecutorPool-2" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"NetworkInterfaceTL-TaskExecutorPool-3" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"NetworkInterfaceTL-ShardRegistry" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg2.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg3.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard1.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard2.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"global" : {
"poolInUse" : <num>,
"poolAvailable" : <num>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"cfg3.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg2.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard2.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard1.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
}
},
"hosts" : {
"cfg3.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg1.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"cfg2.example.net:27019" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard2.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
},
"shard1.example.net:27018" : {
"inUse" : <num>,
"available" : <num>,
"created" : <num>,
"refreshing" :<num>
}
},
"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>
}
connPoolStats.totalAvailable

Informa o número total de conexões de saída disponíveis da instância mongod / mongos atual para outros membros do cluster fragmentado ou conjunto de réplicas.

connPoolStats.totalCreated

Relata o número total de conexões de saída já criadas pela instância mongod / mongos atual para outros membros do cluster fragmentado ou conjunto de réplicas.

connPoolStats.totalInUse

Relata o número total de conexões de saída da instância atual do mongod / mongos para outros membros do cluster fragmentado ou conjunto de réplicas que estão atualmente em uso.

connPoolStats.totalRefreshing

Relata o número total de conexões de saída da instância mongod / mongos atual para outros membros do cluster fragmentado ou conjunto de réplicas que estão sendo atualizados no momento.

connPoolStats.replicaSetMatchingStrategy

Novidades 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 mongos e mongod pode ser definida com o parâmetro ShardingTaskExecutorPoolReplicaSetMatching .

Observação

Se o ShardingTaskExecutorPoolReplicaSetMatching estiver definido como "automatic", o replicaSetMatchingStrategy ainda descreverá a política real que está sendo usada, não "automatic". Para localizar o valor do ShardingTaskExecutorPoolReplicaSetMatching, utilize getParameter que retorna o valor do parâmetro do servidor :

db.adminCommand( { getParameter : 1, "ShardingTaskExecutorPoolReplicaSetMatching" : 1 } )
connPoolStats.numClientConnection

Informa o número de conexões síncronas de saída ativas e armazenadas da instância mongod / mongos atual para outros membros do cluster fragmentado ou conjunto de réplicas.

Essas conexões fazem parte de um pool que é um subconjunto dos dados relatados por totalAvailable, totalCreated e totalInUse.

connPoolStats.numAScopedConnection

Informa o número de conexões síncronas com escopo de saída ativas e armazenadas da instância mongod / mongos atual para outros membros do cluster fragmentado ou conjunto de réplicas.

Essas conexões fazem parte de um pool que é um subconjunto dos dados relatados por totalAvailable, totalCreated e totalInUse.

connPoolStats.pools

Relatórios sobre estatísticas de conexão (em uso/disponível/criada/atualizada) agrupadas pelo pool de conexões. A mongod or mongos has 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>,
"poolCreated" : <num>,
"poolRefreshing" : <num>,
"[host1]" : { "inUse" : <num>, "available" : <num>, "created" : <num>, "refreshing" : <num> },
"[host2]" : { "inUse" : <num>, "available" : <num>, "created" : <num>, "refreshing" : <num> },
...
}

Observação

Se não houver conexões (em uso/disponíveis/criadas/em atualização) para um determinado pool, o connPoolStats não retornará estatísticas para esse 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-7 para um processador de 8 núcleos.

Dica

Veja também:

connPoolStats.pools.NetworkInterfaceTL-ShardRegistry

Disponí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 / mongos atual e outros membros do cluster fragmentado.

connPoolStats.pools.NetworkInterfaceTL-Replication

Disponí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 mongod atual e os outros nós do conjunto de réplicas.

connPoolStats.pools.global

Exibe as estatísticas do pool com base no DBClient.

connPoolStats.hosts

Relató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 / mongos atual e cada membro do cluster fragmentado ou conjunto de réplicas.

connPoolStats.hosts.[host].available

Informa o número total de conexões disponíveis para conexão ao [host].

connPoolStats.hosts.[host].created

Informa o número de conexões para o [host] já criadas.

connPoolStats.hosts.[host].inUse

Informa o número de conexões com o [host] que estão em uso no momento.

connPoolStats.replicaSets

Contém documentos que representam um relatório de informações relacionadas a cada conjunto de réplicas conectado ao mongod / mongos atual.

connPoolStats.replicaSets.replicaSet

Relatórios sobre cada conjunto de réplica conectado ao atual mongod / mongos.

connPoolStats.replicaSets.[replicaSets].hosts

Conté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].addr

Informa o endereço do nó no conjunto de réplicas no formato [hostname]:[port] .

connPoolStats.replicaSets.[replicaSet].hosts[n].ok

Informa false quando:

  • o mongos ou mongod atual não pode se conectar à instância.

  • o mongos ou mongod atual recebeu uma exceção ou erro de conexão.

Este campo é para uso interno.

connPoolStats.replicaSets.[replicaSet].hosts[n].ismaster

Relata true se este host for o membro principal do conjunto de réplicas.

connPoolStats.replicaSets.[replicaSet].hosts[n].hidden

Relata true se esse host for um nó oculto do conjunto de réplicas.

connPoolStats.replicaSets.[replicaSet].hosts[n].secondary

Os relatórios true se esse host for um nó secundário do conjunto de réplicas.

connPoolStats.replicaSets.[replicaSet].hosts[n].pingTimeMillis

Relata o tempo de ping em milissegundos do mongos ou mongod até este host.

connPoolStats.replicaSets.[replicaSet].hosts[n].tags

Relata 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.

host

Voltar

collStats