Monitorar consultas ativas

Esta página descreve como monitorar e solucionar problemas das consultas que estão ativas no seu banco de dados. O monitoramento dessas consultas pode ajudar a identificar as causas de latência do sistema e o alto uso da CPU.

No painel do Query Insights, você pode conferir um resumo das transações ativas e uma lista de transações com consultas e estatísticas associadas. As transações são exibidas pelo horário de início da transação. Se houver um grande número de consultas em execução, os resultados poderão ser limitados a um subconjunto do total de consultas.

Antes de começar

Crie uma função personalizada e adicione as seguintes permissões. Em seguida, conceda o papel a cada conta de usuário que precisa usar os insights de consulta.

Tarefas Papéis Permissões
Conferir o resumo da atividade do banco de dados e as transações de longa duração databaseinsights.viewer databaseinsights.activeQueries.fetch
databaseinsights.activitySummary.fetch
Conferir o resumo da atividade da instância cloudsql.viewer N/A
Encerrar sessões cloudsql.editor
databaseinsights.operationsAdmin
N/A

Ativar consultas ativas

Para ativar as consultas ativas, siga estas etapas:

  1. No console do Google Cloud , acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Para abrir a página Visão geral de uma instância, clique no nome da instância.
  3. No bloco Configuração, clique em Editar configuração.
  4. Abra o painel Query Insights.
  5. Se a caixa de seleção Ativar insights de consulta estiver desmarcada, marque-a. A opção "Consultas ativas" fica disponível quando os insights de consulta estão ativados.
  6. Clique em Salvar.

Ver consultas ativas

Para conferir as consultas ativas, siga estas etapas:

  1. Adicione esse papel para cada usuário que verá as consultas ativas.

  2. No console do Google Cloud , acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  3. Para abrir a página Visão geral de uma instância, clique no nome da instância.

  4. Siga um dos procedimentos abaixo para exibir o painel do Query Insights:

    • Selecione a guia Query Insights.
    • Clique em Acessar o Query Insigths para ver informações mais detalhadas sobre consultas e desempenho. O painel do Query Insights abre. Ele mostra detalhes sobre a instância na parte superior.
  5. Clique na guia Consultas ativas.

    Nela, é possível modificar as informações de consulta que aparecem na tabela Transações em execução há mais tempo:

    • Bancos de dados: filtra a carga de consulta em um banco de dados específico ou em todos os bancos de dados.
    • Usuário: filtra a carga de consulta de uma conta de usuário específica.

Ver consultas ativas normalizadas

É possível conferir uma lista das principais transações de longa duração com consultas ativas normalizadas no painel do Query Insights. Uma consulta ativa normalizada remove dados sensíveis e retorna um resumo. O resumo é igual para valores diferentes usados no exemplo a seguir:

  • Consultas regulares

    • select * from test_table where id=1;
    • select * from test_table_where id=2;
  • Resumo ou consulta normalizada

    • select * from test_table where id=?;

Uma consulta executada em sessões diferentes é exibida como entradas diferentes no painel.

Ver as principais transações em execução há mais tempo

A tabela Transações em execução há mais tempo no painel Query Insights contém as seguintes colunas:

Nome da coluna Descrição
ID da sessão Identificador exclusivo da sessão.
Consulta Texto da consulta SQL.
Estado da sessão O estado da sessão.
Duração da consulta Por quanto tempo a consulta está em execução.
Tipo de evento de espera O tipo de evento de espera, se a solicitação estiver bloqueada para execução de consulta.
ID da sessão de bloqueio O ID da sessão que está bloqueando a sessão.
Duração da espera da transação A duração da espera atual, se a sessão estiver bloqueada.
Linhas da transação modificadas Número de linhas retornadas ao cliente por essa consulta.
% concluído Porcentagem do trabalho concluído, se a consulta informar o progresso.
Banco de dados Banco de dados em que a sessão está sendo executada.
Nome do aplicativo Nome do aplicativo que iniciou a sessão.
Usuário Nome do usuário conectado ao banco de dados.
Endereço do cliente O endereço IP específico do cliente que enviou uma consulta.
Ação Contém um link para encerrar uma sessão.

A tela é atualizada automaticamente a cada 60 segundos.

Encerrar uma sessão

Para encerrar uma consulta ou transação, você precisa ter o papel databaseinsights.operationsAdmin. Para mais informações, consulte a Referência de papéis básicos e predefinidos do IAM.

Para encerrar uma consulta ou transação, os insights de consulta da edição Cloud SQL Enterprise Plus também precisam estar ativados.

Operações de longa duração podem levar mais tempo para serem encerradas.

Para encerrar uma consulta ou transação, siga estas etapas:

  1. Na tabela Transação em execução há mais tempo, selecione uma consulta.
  2. Na coluna Ação, clique em Encerrar sessão.
  3. Na janela Encerrar sessão, clique em Confirmar.

A seguir