Monitorize consultas ativas

Esta página descreve como monitorizar e resolver problemas de consultas que estão a ser executadas na sua instância do Spanner. As consultas ativas são consultas de execução prolongada que podem afetar o desempenho da sua instância. A monitorização destas consultas pode ajudar a identificar as causas da latência da instância e da elevada utilização da CPU.

Através da Google Cloud consola, pode ver as consultas ativas na página Estatísticas de consultas do Spanner. Estas consultas são ordenadas pela hora de início da consulta. Se existirem muitas consultas ativas, os resultados podem estar limitados a um subconjunto do total de consultas devido às restrições de memória que o Spanner aplica à recolha de dados.

Antes de começar

Para receber as autorizações de que precisa para ver as consultas ativas, peça ao seu administrador que lhe conceda as seguintes funções do IAM na instância:

Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Veja as consultas ativas

Para ver as consultas ativas de cada base de dados, faça o seguinte:

  1. Na Google Cloud consola, aceda à página Instances do Spanner.

    Aceda à página Instâncias do Spanner

  2. Clique na instância que contém as consultas que quer monitorizar.

  3. No menu de navegação, clique em Estatísticas de consultas.

  4. Use o menu Base de dados para especificar a base de dados que quer monitorizar.

  5. Clique no separador Consultas ativas. O separador contém um resumo das consultas ativas, juntamente com uma tabela das 50 consultas ativas com maior duração.

Veja as consultas de execução mais longa

A tabela seguinte descreve as colunas predefinidas na tabela Consultas com execução mais longa no separador Consultas ativas:

Nome da coluna Descrição
ID da consulta O identificador exclusivo da consulta.
Consulta O texto da consulta SQL.
Impressão digital Hash da etiqueta de pedido ou, se não estiver presente uma etiqueta, um hash do texto da consulta SQL.
Hora de início A data/hora em que a consulta começou.
Duração da consulta A duração da execução da consulta ativa.
Ação Contém um link para terminar a consulta.

Quando o botão Atualização automática está ativado, o ecrã é atualizado a cada 60 segundos.

Pode usar o botão Opções de apresentação de colunas para selecionar qualquer uma das seguintes colunas opcionais a apresentar na tabela Consultas com execução mais longa:

Nome da coluna Descrição
Endereço IP do cliente O endereço IP do cliente que solicitou a consulta. Por vezes, o endereço IP do cliente pode ser ocultado. O endereço IP apresentado aqui é consistente com os registos de auditoria e segue as mesmas diretrizes de ocultação. Para mais informações, consulte o artigo Endereço IP do autor da chamada nos registos de auditoria. O Spanner recomenda que solicite o endereço IP do cliente apenas quando for necessário, uma vez que os pedidos de endereços IP do cliente podem incorrer em latência adicional.
Região do servidor A região onde o servidor raiz do Spanner processa a consulta. Para mais informações, consulte o artigo Ciclo de vida de uma consulta.
Tipo de transação O tipo de transação da consulta. Os valores possíveis são READ_ONLY, READ_WRITE e NONE.
Cabeçalho do cliente da API O cabeçalho api_client do cliente.
Prioridade A prioridade da consulta. Para ver as prioridades disponíveis, consulte RequestOptions.
Cabeçalho do agente do utilizador O cabeçalho user_agent que o Spanner recebe do cliente.

Termine uma consulta

Pode terminar uma consulta que esteja a ser executada na sua instância. A terminação de uma consulta pode ajudar a libertar recursos e reduzir a carga na sua instância. A terminação de uma consulta é uma operação de melhor esforço.

A página da consola Google Cloud é atualizada depois de iniciar o encerramento. Se o encerramento for bem-sucedido, a consulta é removida da tabela. Se o encerramento falhar, este ocorre em segundo plano, e a consulta continua a aparecer na tabela Consultas com execução mais longa.

O Spanner pode não cancelar uma consulta quando os servidores estão ocupados. Pode tentar terminar uma consulta novamente para a cancelar.

Para receber a autorização de que precisa para terminar uma consulta, peça ao seu administrador para lhe conceder a função de IAM Leitor da base de dados do Cloud Spanner (spanner.databaseReader) na instância.

Esta função predefinida contém a autorização spanner.sessions.delete , que é necessária para terminar uma consulta.

Para terminar uma consulta, faça o seguinte:

  1. Selecione a consulta que quer terminar na tabela Consultas com execução mais longa.
  2. Na coluna Ações, clique em Terminar.
  3. Na janela Terminar consulta, clique em Confirmar.

Para terminar várias consultas, faça o seguinte:

  1. Selecione as consultas que quer terminar na tabela Consultas com execução mais longa.
  2. Clique em Terminar consultas selecionadas.
  3. Na janela Terminar as seguintes consultas, clique em Confirmar.

O que se segue?