- db.serverStatus()
- Retorna umdocumento que fornece uma visão geral do estado do processo do banco de dados de dados. - Este comando fornece um wrapper em torno do comando do banco de dados - serverStatus.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
- MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem 
Importante
Esse comando não é suportado em clusters M0 e Flex. Para obter mais informações, consulte Comandos não suportados.
- MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB 
- MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB 
Comportamento
Por padrão, db.serverStatus() exclui em sua saída:
- algum conteúdo no documento repl . 
- Documento mirroredReads. 
Para incluir campos que são excluídos por padrão, especifique o campo de nível superior e defina-o para 1 no comando. Para excluir campos incluídos por padrão, especifique o campo e defina como 0. Você pode especificar campos incorporados ou de nível superior.
Por exemplo, a seguinte operação suprime as informações repl, metrics e locks na saída.
db.serverStatus( { repl: 0,  metrics: 0, locks: 0 } ) 
O exemplo a seguir inclui todas as informações de resposta na saída:
db.serverStatus( { repl: 1 } ) 
Inicialização
As estatísticas relatadas por db.serverStatus() são redefinidas quando o servidor mongod é reiniciado. O comando db.serverStatus() não relata algumas estatísticas até que elas tenham sido inicializadas por eventos do servidor.
Por exemplo, após reiniciar o servidor mongod, db.serverStatus() não retornará nenhum valor de findAndModify.
db.serverStatus().metrics.commands.findAndModify // No results returned 
Depois que você executar uma query de atualização, as chamadas subsequentes para db.serverStatus() exibirão as métricas esperadas.
{    "arrayFilters" : Long(0),    "failed" : Long(0),    "pipeline" : Long(0),    "total" : Long(1) } 
Observação
O método db.serverStatus() retorna um erro se for feita uma consulta de um objeto específico antes que os contadores tenham começado a incrementar.
Se ainda não houve nenhuma atualização do documento:
db.serverStatus().metrics.commands.update.pipeline 
Retorna:
TypeError: db.serverStatus(...).metrics.commands.update is undefined : @(shell):1:1 
Incluir mirroredReads
Por padrão, as informações de mirroredReads não são incluídas na saída. Para retornar informações de mirroredReads, é necessário especificar explicitamente a inclusão:
db.serverStatus( { mirroredReads: 1 } ) 
Incluir latchAnalysis
Por padrão, as informações do latchAnalysis (disponíveis a partir da versão 4.4) não estão incluídas na saída. Para retornar informações do latchAnalysis, você deve especificar explicitamente a inclusão:
db.serverStatus( { latchAnalysis: 1 } ) 
Saída
Consulte serverStatus Output para obter a documentação completa da saída desta função.