Mantén la atención porque en esta sección encontrarás el arreglo que buscas.Este enunciado ha sido probado por nuestros especialistas para garantizar la calidad y veracidad de nuestro post.
Solución:
conectarse a la base de datos de administración y ejecutar db.serverStatus()
:
> var status = db.serverStatus()
> status.connections
"current" : 21, "available" : 15979
>
Puede obtener directamente consultando
db.serverStatus().connections
Para entender lo que hace MongoDb db.serverStatus().connections
media de respuesta, lea la documentación aquí.
conexiones
"connections" : "current" :
, "available" : , "totalCreated" : NumberLong( ) , conexiones
Un documento que informa sobre el estado de las conexiones. Utilice estos valores para evaluar los requisitos actuales de carga y capacidad del servidor.conexiones.actuales
El número de conexiones entrantes de los clientes al servidor de la base de datos. Este número incluye la sesión de shell actual. Considere el valor de connections.disponible para agregar más contexto a este dato.El valor incluirá todas las conexiones entrantes, incluidas las conexiones de shell o las conexiones de otros servidores, como miembros del conjunto de réplicas o instancias de mongos.
conexiones.disponibles
El número de conexiones entrantes no utilizadas disponibles. Considere este valor en combinación con el valor de connections.current para comprender la carga de conexión en la base de datos y el documento de configuración de ulimit de UNIX para obtener más información sobre los umbrales del sistema en las conexiones disponibles.conexiones.totalCreado
Recuento de todas las conexiones entrantes creadas en el servidor. Este número incluye las conexiones que se han cerrado desde entonces.
Recuento de conexiones por IP de cliente, con total
Usamos esto para ver la cantidad de conexiones por IPAddress con un recuento total de conexiones. Esto fue realmente útil para depurar un problema… ¡simplemente llegue allí antes de llegar al máximo de conexiones!
Para carcasa Mongo:
db.currentOp(true).inprog.reduce((accumulator, connection) => , TOTAL_CONNECTION_COUNT: 0 )
Formateado:
db.currentOp(true).inprog.reduce(
(accumulator, connection) => ,
TOTAL_CONNECTION_COUNT: 0
)
Ejemplo de devolución:
"TOTAL_CONNECTION_COUNT" : 331,
"192.168.253.72" : 8,
"192.168.254.42" : 17,
"127.0.0.1" : 3,
"192.168.248.66" : 2,
"11.178.12.244" : 2,
"Internal" : 41,
"3.100.12.33" : 86,
"11.148.23.34" : 168,
"81.127.34.11" : 1,
"84.147.25.17" : 3
(las direcciones 192.xxx en el monitoreo interno de Atlas)
“Internos” son procesos internos que no tienen un cliente externo. Puede ver una lista de estos con esto:
db.currentOp(true).inprog.filter(connection => !connection.client).map(connection => connection.desc);
db.serverStatus()
no proporciona conexiones abiertas y disponibles, pero no muestra las conexiones desde qué cliente. Para más información puedes usar este comando sudo lsof | grep mongod | grep TCP
. Lo necesito cuando hice la replicación y el nodo principal tiene muchas conexiones de clientes mayores que las secundarias.
$ sudo lsof | grep mongod | grep TCP
mongod 5733 Al 6u IPv4 0x08761278 0t0 TCP *:28017 (LISTEN)
mongod 5733 Al 7u IPv4 0x07c7eb98 0t0 TCP *:27017 (LISTEN)
mongod 5733 Al 9u IPv4 0x08761688 0t0 TCP 192.168.1.103:27017->192.168.1.103:64752 (ESTABLISHED)
mongod 5733 Al 12u IPv4 0x08761a98 0t0 TCP 192.168.1.103:27017->192.168.1.103:64754 (ESTABLISHED)
mongod 5733 Al 13u IPv4 0x095fa748 0t0 TCP 192.168.1.103:27017->192.168.1.103:64770 (ESTABLISHED)
mongod 5733 Al 14u IPv4 0x095f86c8 0t0 TCP 192.168.1.103:27017->192.168.1.103:64775 (ESTABLISHED)
mongod 5733 Al 17u IPv4 0x08764748 0t0 TCP 192.168.1.103:27017->192.168.1.103:64777 (ESTABLISHED)
Esto muestra que actualmente tengo cinco conexiones abiertas al puerto MongoDB (27017) en mi computadora. En mi caso, me estoy conectando a MongoDB desde un servidor Scalatra y estoy usando el controlador MongoDB Casbah, pero verá las mismas conexiones lsof TCP independientemente del cliente utilizado (siempre que se conecten usando TCP/ IP).
Valoraciones y reseñas
Agradecemos que desees respaldar nuestro ensayo poniendo un comentario o dejando una valoración te lo agradecemos.