Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ /

Monitore o desempenho da query com o Query Profiler

Nesta página

  • Considerações
  • Acesso necessário
  • Habilitar e desabilitar o Analisador de query
  • Acessar o Analisador de query

Disponível somente em clusters M10+ e instâncias sem servidor

O Profiler de query diagnostica e monitora problemas de performance. Esse monitoramento pode expor queries de execução lenta e suas principais estatísticas de desempenho na IU do Atlas.

O Atlas coleta e exibe estatísticas de qualquer uma de suas instâncias mongod . O Analisador de query identifica queries lentas com base nosdados de registro de suas instâncias mongod . O Atlas exibe esses dados na aba Query Insights na seção Query Profiler de uma instância.

Observação

O Analisador de query é diferente do Database Profiler. O Criador de Perfil de Consulta identifica queries específicas ineficientes com base em entradas de seus logs do mongod . O Database Profiler retorna informações detalhadas sobre os comandos executados no mongod com base no nível de criação de perfil especificado. Alterar o nível de perfil não impacto as consultas lentas exibidas no Criador de perfil de consulta.

O Atlas Query Profiler mostra operações em todo o cluster por padrão. Você pode filtrar os hosts para quais operações o Analisador de query exibe dados com o menu suspenso Filter by Hosts, que permite visualizar dados relacionados a um ou mais hosts específicos ou exibir grupos de hosts primários ou secundários. A guia Query Insights exibe informações para revelar operações de banco de dados de dados lentas em um período de tempo definido, como o seguinte:

  • Operation Execution Time

  • Server Execution Time (instâncias sem servidor)

Ele exibe esses dados tanto em um gráfico quanto em uma tabela, onde é possível filtrá-los por aspecto e período.

O Atlas Query Profiler suporta operações de agrupamento do mesmo tipo em execução na mesma coleção em torno do mesmo carimbo de data/hora para suportar ponto de dados adicionais.

Para suportar ponto de dados adicionais, o Atlas Query Profiler suporta operações de agrupamento que atendem aos seguintes critérios:

  • As operações são do mesmo tipo de operação.

  • As operações estão em execução no mesmo namespace.

  • As operações têm valores booleanos hasSort e usedIndex correspondentes.

  • As operações são executadas em torno do mesmo registro de data e hora.

O Atlas gerencia o limite de operações lentas para cada host mongod com base no tempo médio de execução da operação nesse host. Este limite pode ser alterado utilizando o comando db.setProfilingLevel mongosh .

Observação

A alteração do limite para operações lentas usando db.setProfilingLevel pode afetar o desempenho e as configurações de log do sistema. Considere cuidadosamente quaisquer implicações de desempenho e segurança antes de usar db.setProfilingLevel para ajustar as configurações do Analisador de query em uma implantação de produção. As configurações do Analisador de query são redefinidas para os valores padrão após a reinicialização de um nó.

Além disso, aumentar o zoom no eixo x do gráfico de dispersão buscará novamente as operações lentas e poderá fornecer fidelidade mais detalhada das operações lentas durante o período de tempo selecionado.

Observação

Para recusar o limite de operação lento gerenciado pelo Atlas e utilizar um limite de query lento fixo de 100 milissegundos em vez disso, utilize a API de Administração do Atlas . Consulte desabilitar limite de operação lenta gerenciada. Para clusters do M0, M2, M5 e instâncias sem servidor, o Atlas desabilita o limite de operação de consulta lenta gerenciada pelo Atlas por padrão e você não pode habilitá-lo.

Importante

Leia as seguintes considerações antes de habilitar o Analisador de query.

Os dados de perfil podem incluir informações confidenciais, incluindo o conteúdo de query ao banco de dados. Certifique-se de que a exposição desses dados ao Atlas seja consistente com suas práticas de segurança da informação.

O Analisador de query exibe aproximadamente 100.000 logs de amostra por vez. Ele mostra todos os logs se 100.000 ou menos logs foram registrados nos hosts selecionados e no intervalo de tempo.

O Atlas exibe não mais do que 100.000 pontos de dados nos gráficos Query Profiler .

Os dados de registro são processados em lotes. Os dados podem ser atrasados em até cinco minutos a partir de tempo real.

Se um cluster experimentar um pico de atividade e gerar uma quantidade extremamente grande de mensagens de log, o Atlas poderá parar de coletar e armazenar novos registros por um período de tempo.

Observação

Os limites da taxa de análise de log se aplicam somente à IU do Performance Advisor, à IU do Query Insights, à IU do Access Tracking e à IU do Atlas Search Query Analytics. Os arquivos de log que podem ser baixados estão sempre completos.

Para habilitar ou desabilitar o Performance Advisor e o profiler de query para um projeto, você deve ter a função Project Owner para o projeto ou a função Organization Owner em sua organização principal.

Para visualizar o desempenho da query no Analisador de query, você deve ter Project Read Only acesso ou Project Observability Viewer ao projeto.

O Atlas habilita o Analisador de query por padrão.

Para desabilitar o Profiler de query:

1
  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Ao lado do menu Projects, expanda o menu Options e clique em Project Settings.

    A página Configurações do projeto é exibida.

2

Na seção Database Monitoring Tools, alterne Performance Advisor and Profiler para Off.

Para acessar o Analisador de query:

  • Para um cluster:

    1. No painel do projeto, clique em View Monitoring na instância desejada.

    2. Clique na aba Query Insights.

    3. Clique na aba Query Profiler.

    Observação

    Quando você acessa o Analisador de query no nível do cluster, o Analisador de query exibe todos os seus dados do log nos nós primário e secundário.

  • Para uma instância sem servidor, clique na aba Monitoring.

Acima do gráfico, selecione a métrica e o período de tempo que você deseja ver.

  1. Selecione a métrica no menu Display. Atlas aceita:

    • Padrão: Operation Execution Time ou Server Execution Time (instâncias sem servidor)

    • Keys Examined

    • Docs Returned

    • Examined:Returned Ratio

    • Num Yields

    • Response Length

  2. Selecione o período de tempo no menu View Last. Atlas aceita:

    • 5 dias

    • 24 hr (default)

    • 12 hr

    • 8 hr

    • 1 hr

    • 10 min

  3. Selecione o host ou hosts para os quais deseja visualizar métricas no menu suspenso Filter by Hosts.

Para visualizar uma query completa e suas estatísticas de execução, clique no ponto que a representa no gráfico. Você também pode clicar e arrastar ao longo dos eixos x e y para ampliar um subconjunto específico de dados coletados. Exibir mais detalhes sobre um grupo de operações em compartimento seleciona uma operação aleatória do grupo. Você deve ampliar para exibir detalhes sobre uma operação específica dentro de um grupo de operações compartimentalizadas.

Acima da tabela, selecione o namespace, o tipo de operação e a métrica que você deseja definir o perfil:

  1. Clique em All Namespaces para alterar qual combinação de bancos de dados e coleções para perfil.

  2. Clique em All Operations para alterar quais operações você deseja criar o perfil.

  3. Clique em Operation Execution Time ou Server Execution Time (Instância sem servidor) para alterar a métrica cujo perfil você deseja criar. Atlas aceita:

    • Padrão: Operation Execution Time ou Server Execution Time (instâncias sem servidor)

    • Keys Examined

    • Docs Returned

    • Examined:Returned Ratio

    • Num Yields

    • Response Length

Voltar

Latência da query