Estoy tratando de obtener los resultados del comando db.stats() mongo shell en mi código python (para fines de supervisión).MongoDB: cómo obtener db.stats() desde la API
Pero a diferencia de por ejemplo serverStatus no puedo hacer db.command('stats')
. No pude encontrar ningún equivalente de API en documentos de mongodb. También probé variaciones con db.$cmd
pero nada de eso funcionó.
Así,
pequeña pregunta: ¿cómo puedo obtener resultados de db.stats()
(número de conexiones/objetos, el tamaño de los datos & índices, etc) en mi código Python?
Pregunta más importante: ¿alguien puede explicar por qué algunos comandos de shell son fácilmente accesibles desde API, mientras que otros no? Es muy molesto: se puede acceder a algunas herramientas relacionadas con el administrador a través del db.$cmd.sys
, algunas a través del db.command
, algunas vía ...? ¿Hay algún estándar o explicación de esta situación?
PS: mongodb 2.0.2, 2.1.0 pymongo, pitón 2,7
Tenga en cuenta que dbstats bloquea su base de datos mientras se ejecuta, por lo que no es adecuada para la producción. https://jira.mongodb.org/browse/SERVER-5714 – whit537
+1 brillante respuesta! –
No está claro que siga siendo una llamada de bloqueo en el motor de almacenamiento 'WiredTiger': http://stackoverflow.com/questions/36559408/is-db-stats-a-blocking-call-for-mongodb –