Resolva problemas de configuração do Log Analytics

Este documento mostra como resolver erros que podem ocorrer quando usa a página Log Analytics da consola do Google Cloud. Google Cloud

Mensagens de erro

Esta secção descreve as mensagens de erro que pode ver e como resolver as condições de erro correspondentes.

Mensagem de erro No completion signal within allotted timeframe

Introduz uma consulta SQL e seleciona Executar consulta. A consulta não é concluída e é apresentada a seguinte mensagem de erro:

The query failed to execute and return results due to error: No completion signal within allotted timeframe.

Para resolver este erro, faça uma das seguintes ações:

  • Diminua o intervalo durante o qual os registos são consultados e, em seguida, repita a consulta. Por exemplo, se um intervalo de consulta for de 14 dias, reduza-o para 7 dias e, em seguida, execute a consulta.

  • Crie um conjunto de dados do BigQuery associado e, em seguida, execute a consulta a partir da interface do BigQuery. A interface do BigQuery suporta consultas que requerem um tempo de execução mais longo do que a interface do Cloud Logging. Para mais informações, consulte o artigo Consultar um conjunto de dados do BigQuery associado.

Mensagem de erro de consultas em relação a contentores com chaves CMEK distintas

Introduz uma consulta SQL que consulta vários contentores de registos e seleciona Executar consulta. A consulta não é concluída e é apresentada a seguinte mensagem de erro:

Queries against buckets with distinct CMEK keys must have a key configured in the LogSettings.

Para resolver esta situação, faça uma das seguintes ações:

  • Configure os contentores de registos para usar a mesma chave do Cloud Key Management Service (Cloud KMS).
  • Quando os contentores de registos estão na mesma localização, pode configurar uma pasta ou uma organização que seja um recurso principal para os contentores de registos com uma chave do Cloud KMS predefinida. A chave predefinida dos pais tem de estar na mesma localização que os contentores de registos. Com esta configuração, a chave predefinida do principal encripta todos os dados temporários gerados pela consulta do Log Analytics. Para mais informações, consulte o artigo Restrições do Log Analytics.

A cláusula FROM tem de conter exatamente uma mensagem de erro de visualização

Introduz uma consulta SQL no painel de consultas da página Log Analytics na consola, mas o analisador SQL apresenta o seguinte erro: Google Cloud

FROM clause must contain exactly one log view

O erro anterior é comunicado quando não é possível resolver a tabela especificada na declaração FROM para uma vista de registo específica.

Para resolver este erro, certifique-se de que o nome da tabela tem a sintaxe adequada:

  • Certifique-se de que o nome da tabela segue a sintaxe exigida pelo esquema de nomenclatura do Log Analytics. O BigQuery e o Log Analytics têm requisitos diferentes para o nome da tabela. Pode encontrar a sintaxe necessária para o nome da tabela vendo a consulta predefinida.

  • Se o Google Cloud ID do projeto, a região, o ID do contentor ou o ID da vista de um contentor de registos contiver carateres de ponto final, (.), certifique-se de que cada um destes campos está envolvido por acentos graves únicos, (`).

    Por exemplo, se um Google Cloud ID do projeto for example.com:bluebird, para consultar a vista _AllLogs do contentor de registos _Default, use a seguinte sintaxe para especificar a tabela:

    
    SELECT *
    FROM `example.com:bluebird`.`global`.`_Default`.`_AllLogs`
    

    A consulta anterior pressupõe que o contentor _Default está na região global.

Não é possível guardar uma consulta

Quer guardar a sua consulta atual, por isso, executa a consulta e, de seguida, clica em Guardar, mas a opção Guardar consulta está desativada ou não consegue concluir os passos da caixa de diálogo.

Quando a opção Guardar consulta está desativada, as definições de recursos predefinidas da sua organização ou pasta definem uma localização que não é permitida pela política da organização. Para resolver esta falha, peça ao administrador da sua organização para definir uma localização nas definições de recursos predefinidas que corresponda a uma localização permitida pela política da sua organização. Para mais informações, consulte o artigo Configure as predefinições para organizações e pastas.

Se a opção Guardar consulta estiver ativada, mas não conseguir concluir a caixa de diálogo e guardar a consulta, faça o seguinte:

  1. Certifique-se de que a consulta não contém erros de sintaxe. Só pode guardar consultas válidas.
  2. Opcional: copie a consulta para a área de transferência.
  3. Atualize a página.
  4. Se copiou a consulta para a área de transferência, cole-a no painel Consulta, execute a consulta e, em seguida, realize a operação de guardar.

Não é possível criar uma vista do Analytics

Quer criar uma vista de análise, por isso, introduz e executa uma consulta SQL e, de seguida, clica em Guardar, mas a opção Guardar como vista de análise está desativada.

Para resolver esta situação, certifique-se de que as suas funções de IAM incluem as seguintes autorizações:

  • observability.analyticsViews.{get, list, create, update, delete}

Estas autorizações não estão incluídas em nenhuma função predefinida do Cloud Logging. Para obter informações sobre as funções necessárias, consulte o artigo Crie e consulte vistas do Analytics: antes de começar.

Não é possível consultar uma vista de propriedade do Analytics

Quer consultar a visualização de estatísticas, mas o painel Visualizações na página Análise de registos não mostra nenhuma visualização de estatísticas.

Para resolver esta falha, experimente o seguinte:

  • Certifique-se de que as suas funções de IAM incluem as seguintes autorizações:

    • observability.analyticsViews.{get, list}

    Estas autorizações não estão incluídas em nenhuma função predefinida do Cloud Logging. Para obter informações sobre as funções necessárias, consulte o artigo Crie e consulte vistas do Analytics: antes de começar.

  • Certifique-se de que existem visualizações de estatísticas no seu Google Cloud projeto.

Acesso negado à página Log Analytics

Abre a página Log Analytics na Google Cloud consola e é apresentada uma mensagem de erro de acesso negado.

Para receber as autorizações de que precisa para carregar a página Log Analytics, executar consultas e ver registos, peça ao seu administrador para lhe conceder as seguintes funções do IAM no seu projeto:

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

As autorizações de que precisa para ver entradas de registo e executar consultas na página Log Analytics são as mesmas de que precisa para ver registos na página Explorador de registos. Para obter informações sobre funções adicionais que precisa para consultar visualizações em contentores definidos pelo utilizador ou para consultar a visualização _AllLogs do contentor de registos _Default, consulte as funções do Cloud Logging.

A atualização do contentor de registos para usar o Log Analytics falha

Cria um contentor de registos e seleciona a opção para usar o Log Analytics ou atualiza um contentor de registos existente para usar o Log Analytics. A atualização falha com uma condição de erro semelhante à seguinte:

Failed precondition (HTTP 400): Constraint "my-constraint" violated for PROJECT_ID  with location global.

A mensagem de erro anterior indica que a sua organização configurou uma política organizacional que restringe as regiões que podem ser usadas. Os contentores de registos elegíveis para atualização de modo a usar o Log Analytics têm de usar a região global. Se puder remover a política organizacional que restringe a utilização da região global, pode atualizar o seu contentor de registos. Caso contrário, não pode atualizar os contentores de registos.

A criação de um conjunto de dados do BigQuery associado falha

Edita um contentor de registos para criar um conjunto de dados do BigQuery associado ou cria um novo contentor de registos e seleciona a opção para criar um conjunto de dados associado. No entanto, o conjunto de dados associado não é criado.

Para resolver este erro, peça ao administrador do sistema do Google Cloud projeto que lhe conceda uma função de IAM que inclua a seguinte autorização:

  • logging.links.create

A autorização anterior está incluída nas funções de administrador de registos (roles/logging.admin) e escritor de configuração de registos (roles/logging.configWriter).

Para informações sobre funções e autorizações, consulte o artigo Controlo de acesso com a IAM.

A eliminação de um conjunto de dados do BigQuery associado falha

Já não quer o conjunto de dados associado, mas a opção para eliminar esse conjunto de dados está desativada.

Para resolver este erro, peça ao administrador do sistema do Google Cloud projeto que lhe conceda uma função de IAM que inclua a seguinte autorização:

  • logging.links.delete

A autorização anterior está incluída nas funções de administrador de registos (roles/logging.admin) e escritor de configuração de registos (roles/logging.configWriter).

Esta autorização permite-lhe eliminar o conjunto de dados associado na página Armazenamento de registos da consola Google Cloud . Para mais informações sobre funções e autorizações, consulte o artigo Controlo de acesso com a IAM.

O botão de definições do motor de consulta está em falta

Se o botão Definições não for apresentado junto ao botão Executar consulta, significa que o seu Google Cloud projeto não tem slots do BigQuery reservados ativados. Para ativar o botão Definições, configure slots do BigQuery reservados para o seu projeto.

O botão Executar no BigQuery está desativado

Se o botão Executar no BigQuery for apresentado, mas estiver desativado, significa que uma visualização de registos referenciada pela sua consulta não tem um conjunto de dados associado. Para executar a consulta nas suas reservas de slots do BigQuery, crie um conjunto de dados do BigQuery associado na sua vista de registo.

Nenhuma conta de serviço de monitorização

Quer criar uma política de alertas para monitorizar os resultados de uma consulta SQL. Os passos de configuração exigiram que concedesse funções de IAM à conta de serviço de monitorização, mas essa conta não existe.

A conta de serviço de monitorização chama-se agente de serviço, porque é criada e gerida pela Google Cloud. A conta é criada automaticamente quando configura um recurso ou um serviço que requer a conta. Por exemplo, se criar um canal de notificação do Pub/Sub, essa ação pode fazer com que a conta de serviço de monitorização seja criada.

Para criar a conta de serviço de monitorização e conceder-lhe as autorizações necessárias para as políticas de alerta baseadas em SQL, faça o seguinte:

  1. Crie a conta de serviço de monitorização. Para mais informações, consulte o artigo Crie e conceda funções a agentes de serviço.

  2. Conceda as seguintes funções à conta de serviço de monitorização:

Erro de autorização da conta de serviço de monitorização negada

Quer criar uma política de alertas para monitorizar os resultados de uma consulta SQL. No entanto, vê um erro PermissionDenied com uma mensagem que começa por Error authenticating service account.

Para resolver esta falha, conceda as seguintes funções à conta do serviço de monitorização:

Existem entradas de registo duplicadas nos meus resultados do Log Analytics

Executa uma consulta que está a contabilizar ou a comunicar entradas duplicadas. Uma vez que o Explorador de registos remove entradas duplicadas com base no nome do registo, na data/hora e no ID de inserção, espera que o Log Analytics remova as entradas de registo duplicadas antes de executar uma consulta.

O Log Analytics não realiza o mesmo tipo de remoção de duplicados que o Logs Explorer.

Para resolver entradas de registo duplicadas, experimente o seguinte:

  1. Determine se as entradas de registo duplicadas têm valores de data/hora de receção diferentes. Quando as datas/horas diferem, isso indica que os mesmos dados foram escritos no Logging várias vezes.

    Para resolver escritas duplicadas, investigue a integração de registos para encontrar mensagens de erro ou configurações incorretas.

  2. Se o seu contentor estiver configurado para usar chaves do Cloud Key Management Service, certifique-se de que está dentro da quota e que a sua chave está sempre acessível. Exceder a quota ou perder o acesso à chave pode resultar em entradas de registo duplicadas.

    Para resolver estas falhas, certifique-se de que não excede a sua quota e que a chave está acessível.

  3. Modifique a sua consulta para remover entradas de registo duplicadas.

    Por exemplo, suponha que o payload JSON contém fieldA e fieldB. O primeiro é uma string e o segundo é numérico. Além disso, suponha que o payload JSON contém um campo etiquetado server, que contém uma string. Em seguida, considere a seguinte consulta:

    SELECT
      JSON_VALUE(json_payload.fieldA) AS fieldA
      SUM(IFNULL(SAFE_CAST(JSON_VALUE(json_payload.fieldB) AS INT64), 0)) AS sum_fieldB
    FROM
      `VIEW`
    WHERE
      JSON_VALUE(json_payload.server) = "test"
    GROUP BY
      fieldA;
    

    Pode modificar a consulta para remover entradas de registo duplicadas, em que o nome do registo, a data/hora e o ID de inserção são examinados para determinar se uma entrada de registo é um duplicado:

    WITH
      deduplicated AS (
      SELECT
        JSON_VALUE(json_payload.fieldA) AS fieldA
        IFNULL(SAFE_CAST(JSON_VALUE(json_payload.fieldB) AS INT64), 0) AS fieldB
      FROM
        `VIEW` a
      WHERE
        JSON_VALUE(json_payload.server) = "test"
      QUALIFY
        ROW_NUMBER() OVER (PARTITION BY a.log_name, a.timestamp, a.insert_id ) = 1 )
    
    SELECT
      fieldA,
      SUM(fieldB) AS sum_fieldB
    FROM
      deduplicated
    GROUP BY
      fieldA;