db.serverStatus()Devuelve un(a) documento que proporciona una visión general del estado del proceso de la base de datos.
Este comando proporciona una envoltura alrededor del comando de base de
serverStatusdatos.
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, db.serverStatus() excluye en su 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.2.6, Puedes excluir todos los campos opcionales de db.serverStatus() output especificando none: 1. Después de excluir 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 por db.serverStatus() se restablecen cuando se reinicia el servidor de mongod. El comando db.serverStatus() no informa de algunas estadísticas hasta que hayan sido inicializadas por eventos del servidor.
Por ejemplo, después de reiniciar el servidor mongod, db.serverStatus() no devolverá ningún valor para findAndModify.
db.serverStatus().metrics.commands.findAndModify // No results returned
Después de ejecutar una consulta de actualización, las llamadas posteriores 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 consulta 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
Consulte Salida de serverStatus para obtener la documentación completa de la salida de esta función.