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
By default, db.serverStatus() excludes in its output:
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.0.22, 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
The statistics reported by db.serverStatus() are reset when the mongod server is restarted. The db.serverStatus() command does not report some statistics until they have been initialized by server events.
For example, after restarting the mongod server, db.serverStatus() won't return any values for findAndModify.
db.serverStatus().metrics.commands.findAndModify // No results returned
After you run an update query, subsequent calls to db.serverStatus() display the expected metrics.
{ "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.