Resolver problemas de consultas KQL para o data lake do Microsoft Sentinel

Utilize a seguinte lista de verificação para resolver problemas comuns ao trabalhar com consultas e tarefas KQL (Linguagem de Pesquisa Kusto) no data lake Microsoft Sentinel.

  • Verifique se existem pré-requisitos antes de executar consultas ou tarefas. Para obter mais informações, veja Funções e permissões do Microsoft Sentinel data lake.

  • Certifique-se de que selecionou as áreas de trabalho corretas antes de executar consultas ou tarefas KQL.

  • Confirme que todas as tabelas e áreas de trabalho referenciadas existem e estão acessíveis.

  • Utilize apenas os operadores e comandos KQL suportados para evitar erros de execução.

  • Ajuste a consulta com filtros, como o intervalo de tempo, para evitar tempos limite de consulta.

Validação específica da tarefa:

  • Verifique se tem a função correta para a área de trabalho de destino ao criar novas tabelas personalizadas através de tarefas. Para obter mais informações, veja Funções e permissões do Microsoft Sentinel data lake.

  • Teste as consultas num editor de KQL para detetar erros de sintaxe e lógica antes de as submeter como tarefas.

  • Certifique-se de que os nomes das tarefas são exclusivos em todas as tarefas no inquilino, incluindo tarefas de Blocos de Notas.

  • Confirme que o esquema de saída da consulta está alinhado com a tabela de destino em nomes de colunas e tipos de dados.

  • Verifique o estado da tarefa e controle o progresso.

  • Veja as tabelas de erros seguintes para obter mensagens de erro específicas e passos de resolução.

Nota

Os dados promovidos para o escalão de análise podem demorar entre 15 e 30 minutos a aparecer na Investigação Avançada, dependendo do tamanho dos dados e da complexidade da consulta. Os resultados parciais podem ser promovidos se a consulta da tarefa exceder o limite de uma hora.

Mensagens de erro de consulta KQL

Mensagem de erro Causa raiz Ações sugeridas
Não foi possível localizar a tabela ou está vazia. A tabela referenciada não existe, está vazia ou o utilizador não tem as permissões necessárias. Verifique o nome da tabela, confirme a disponibilidade dos dados e certifique-se de que o utilizador tem o acesso adequado. Para obter mais informações, veja Funções e permissões do Microsoft Sentinel data lake.
Não é possível aceder a um objeto eliminado. Ocorreu um erro de serviço interno no serviço de back-end. Repita. Abra um pedido de suporte se o problema persistir.
As consultas excedem o tempo limite no Gateway. Consultas de execução prolongada sem filtros de tempo. Impor filtros de tempo ou aplicar filtros adicionais.
Sem intervalo de tempo definido. Adicione um parâmetro de tempo para controlar o custo da consulta e evitar tempos limite. As consultas que têm um lookback sem restrições podem causar tempos limite. Impor filtros de tempo ou aplicar filtros adicionais.
Função não suportada. Modifique a consulta para remover funções que não são suportadas no data lake: ingestion_time(). As consultas no data lake não suportam a ingestion_time() função. Remova ingestion_time() da consulta e tente novamente.
A execução da consulta demorou mais do que o tempo limite atribuído e foi abortada. • A consulta pode ser demasiado complexa ou obter um conjunto de dados grande, fazendo com que exceda o tempo de execução permitido.
• Uma estrutura de consulta ineficiente, como associações desnecessárias ou filtragem excessiva, pode contribuir para um desempenho lento.
Otimize a consulta e tente novamente.
401-Não Autorizado: normalmente, isto representa um erro permanente e é pouco provável que a repetição ajude. Detalhes do erro: DataSource={clusterUri}, DatabaseName={databaseName}. • O token de autenticação utilizado para aceder ao data lake pode ser inválido ou expirado.
• Não tem as permissões necessárias para consultar a base de dados especificada.
Reautenticar e verificar as permissões de acesso.
A consulta denominada URL externo. A chamada de um URL externo não é suportada para consultas no Lake. As consultas KQL executadas no ambiente do data lake não suportam a chamada de pontos finais externos. Remova a chamada de URL externo da consulta.
A execução de consultas excedeu os limites permitidos. As consultas interativas KQL no data lake estão limitadas a 500 000 linhas. Execute a consulta numa tarefa KQL ou utilize Blocos de Notas.
Não foi possível localizar a(s) tabela(s) ou pode não ter dados. Verifique se as tabelas existem, se têm dados ou se o utilizador tem permissões. • As tabelas especificadas podem não existir na base de dados.
• Pode não ter permissões para aceder às tabelas.
• As tabelas podem existir, mas não têm dados, o que não resulta numa saída significativa.
Confirme a existência da tabela, a disponibilidade de dados e as permissões de utilizador.
O texto da consulta excedeu o comprimento máximo permitido após a expansão interna. Isto pode ocorrer quando o in() operador é utilizado com uma variável que contém uma grande lista de itens. • O in() operador pode ser utilizado com uma lista grande, fazendo com que a consulta expandida exceda os limites de consulta.
• A consulta pode conter conteúdo gerado dinamicamente que resulta num comprimento excessivo.
Reduza o tamanho da lista ou simplifique a consulta.
A execução de consultas excedeu os limites permitidos. Otimize a consulta e tente novamente.
Erros semânticos e de sintaxe, por exemplo:
  • Erro semântico: operador "project": Falha ao resolver a expressão escalar com o nome "Carimbo de data/hora"
  • Erro semântico: operador "where": Falha ao resolver a expressão escalar denominada "Tipo"
  • Erro de sintaxe: o operador não pode ser o primeiro operador numa consulta.
  • Erro de sintaxe: Expressão em falta
  • Falha ao executar a consulta KQL com erros de validação: o fragmento incompleto é inesperado.
A consulta tem um formato incorreto e está a referenciar tabelas ou colunas que não existem ou está a utilizar funções escalares inválidas. Verifique a consulta e tente novamente.
O cliente não tem acesso a áreas de trabalho ou o cliente forneceu áreas de trabalho inválidas no âmbito. A consulta utiliza um ID de área de trabalho inválido. Introduza o ID da área de trabalho correto e tente novamente.
Comando de controlo inesperado A utilização de comandos de controlo (por exemplo, show) não é permitida. Não é necessária nenhuma ação.

Mensagens de erro da tarefa KQL

Mensagem de erro Causa raiz Ações sugeridas
A tabela de destino especificada não existe na área de trabalho de destino. O nome da tabela está incorreto, foi eliminado ou ainda não foi criado. Verifique o nome da tabela e certifique-se de que existe na área de trabalho de destino antes de submeter a tarefa.
A tabela de origem especificada não existe. Uma ou mais tabelas de origem não existem nas áreas de trabalho especificadas ou foram eliminadas recentemente da área de trabalho. Verifique se existem tabelas de origem na área de trabalho especificada.
O nome da área de trabalho ou base de dados fornecido na consulta é inválido ou inacessível. A base de dados referenciada não existe ou a tarefa não tem permissões de acesso. Confirme que o nome da base de dados está correto e acessível a partir do contexto da tarefa.
A área de trabalho de destino especificada não existe nas subscrições Azure. O ID ou nome da área de trabalho é inválido ou não existe em nenhuma subscrição Azure no seu inquilino. Valide o ID da área de trabalho.
O esquema de saída da consulta não corresponde ao esquema da tabela de destino. O número ou os nomes das colunas na saída da consulta diferem do esquema da tabela de destino. Atualize a consulta ou o esquema da tabela para garantir que estão alinhados.
Os tipos de dados de uma ou mais colunas na saída da consulta não correspondem ao esquema da tabela de destino. Escreva um erro de correspondência entre o resultado da consulta e o esquema da tabela, por exemplo cadeia versus datetime. Certifique-se de que cada coluna na saída da consulta corresponde ao tipo de dados esperado no esquema da tabela.
A consulta KQL não foi executada devido a erros de sintaxe ou lógica. A consulta contém sintaxe inválida, funções não suportadas, tipos de dados não suportados ou referências incorretas. Teste a consulta em consultas KQL ou Azure Data Explorer antes de utilizar a consulta na tarefa KQL.
O nome da tarefa KQL tem de ser exclusivo. O nome da tarefa já existe no inquilino. Forneça um nome exclusivo para a tarefa.
Nome de coluna inválido. Deve começar com uma letra e conter apenas letras, números e carateres de sublinhado (_), _ResourceId. A tarefa tem colunas de saída que contêm um formato não suportado. Atualize a consulta e mude o nome das colunas.