db.serverStatus()Devuelve un documento que proporciona una visión general del estado del proceso de base de datos.
Este comando proporciona un contenedor alrededor del comando de base de datos
serverStatus.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
- MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Importante
Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta 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.
Comportamiento
Por defecto, excluye en sudb.serverStatus() salida:
algunos contenidos en el documento repl.
mirroredReads documento.
Para incluir los campos que están excluidos por defecto, especifique el campo de nivel superior y configúrelo como 1 en el comando. Para excluir campos que se incluyen por defecto, especifique el campo y configúrelo en 0. Puede especificar campos de nivel superior o campos incrustados.
Por ejemplo, la siguiente operación suprime la información repl, metrics y locks en el resultado.
db.serverStatus( { repl: 0, metrics: 0, locks: 0 } )
El siguiente ejemplo incluye toda la información de repl en la salida:
db.serverStatus( { repl: 1 } )
Excluir todos los campos opcionales
A partir de MongoDB 8.3, puedes excluir todos los campos opcionales de la salida db.serverStatus() al especificar none: 1. Después de eliminar todos los campos opcionales, puedes especificar los campos que deseas incluir.
Este ejemplo utiliza none para excluir inicialmente todos los campos opcionales de la salida, y luego incluye el documento locks.
db.serverStatus({ none: 1, locks: 1 })
Inicialización
Las estadísticas reportadas pordb.serverStatus()se restablecen cuando se reinicia el servidormongod. El comandodb.serverStatus()no reporta algunas estadísticas hasta que se hayan inicializado mediante eventos del servidor.
Por ejemplo, después de reiniciar el mongod servidor, no devolverá ningúndb.serverStatus() valor findAndModify para.
db.serverStatus().metrics.commands.findAndModify // No results returned
Después de ejecutar una consulta de actualización, las llamadas subsiguientes a db.serverStatus() muestran las métricas esperadas.
{ "arrayFilters" : Long(0), "failed" : Long(0), "pipeline" : Long(0), "total" : Long(1) }
Nota
El método db.serverStatus() devuelve un error si se solicita un objeto específico antes de que los contadores hayan comenzado a incrementarse.
Si aún no se han realizado actualizaciones en el documento:
db.serverStatus().metrics.commands.update.pipeline
Devuelve:
TypeError: db.serverStatus(...).metrics.commands.update is undefined : @(shell):1:1
Incluir mirroredReads
Por defecto, la información mirroredReads no se incluye en la salida. Para devolver información mirroredReads, debes especificar explícitamente la inclusión:
db.serverStatus( { mirroredReads: 1 } )
Salida
Consulta Salida de serverStatus para ver la documentación completa de la salida de esta función.