Partilhar via


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

Use a lista de verificação a seguir para resolver problemas comuns ao trabalhar com consultas e trabalhos KQL (Kusto Query Language) no data lake do Microsoft Sentinel.

  • Verifique se há pré-requisitos antes de executar consultas ou trabalhos. Para obter mais informações, consulte Funções e permissões para o data lake do Microsoft Sentinel.

  • Certifique-se de selecionar os espaços de trabalho corretos antes de executar consultas ou trabalhos do KQL.

  • Confirme se todas as tabelas e espaços de trabalho referenciados existem e estão acessíveis.

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

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

Validação específica do trabalho:

  • Certifique-se de que tem a função correta para o espaço de trabalho alvo ao criar novas tabelas personalizadas através de tarefas. Para obter mais informações, consulte Funções e permissões para o data lake do Microsoft Sentinel.

  • Teste consultas em um editor KQL para detetar erros de sintaxe e lógica antes de enviá-los como trabalhos.

  • Certifique-se de que os nomes de trabalho sejam exclusivos em todos os trabalhos no locatário, incluindo trabalhos de Blocos de Anotações.

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

  • Verifique o status do trabalho e acompanhe o progresso.

  • Consulte as tabelas de erro a seguir para obter mensagens de erro específicas e etapas de resolução.

Observação

Os dados promovidos para a camada de análise podem levar de 15 a 30 minutos para aparecer no Advanced Hunting, dependendo do tamanho dos dados e da complexidade da consulta. Os resultados parciais podem ser promovidos se as consultas de tarefas excederem o limite de uma hora.

Mensagens de erro de consulta KQL

Mensagem de erro Causa raiz Ações sugeridas
A tabela não pôde ser encontrada ou está vazia. A tabela referenciada não existe, está vazia ou o usuário não tem as permissões necessárias. Verifique o nome da tabela, confirme a disponibilidade dos dados e verifique se o usuário tem acesso apropriado. Para obter mais informações, consulte Funções e permissões para o data lake do Microsoft Sentinel.
Não é possível acessar um objeto descartado. Ocorreu um erro de serviço interno no serviço de back-end. Tentar novamente. Abra um pedido de suporte se o caso persistir.
Tempo limite das consultas no Gateway. Consultas de longa duração sem filtros de tempo. Imponha filtros de tempo ou aplique filtros extras.
Sem intervalo de tempo definido. Adicione um parâmetro de tempo para controlar o custo da consulta e evitar tempos limites. Consultas com retrospetiva irrestrita podem causar tempos limites. Imponha filtros de tempo ou aplique filtros extras.
Função não suportada. Modifique sua 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 anulada. • A consulta pode ser excessivamente complexa ou recuperar um grande conjunto de dados, fazendo com que exceda o tempo de execução permitido.
• Uma estrutura de consulta ineficiente, como junções desnecessárias ou filtragem excessiva, pode contribuir para um desempenho lento.
Otimize a sua consulta e tente novamente.
401-Não autorizado: Isso normalmente representa um erro permanente, e é improvável que uma nova tentativa ajude. Detalhes do erro: DataSource={clusterUri}, DatabaseName={databaseName}. • O token de autenticação usado para acessar o data lake pode ser inválido ou expirado.
• Você não tem as permissões necessárias para consultar o banco de dados especificado.
Reautentique e verifique as permissões de acesso.
A consulta fez um pedido a um URL externo. Não há suporte para chamar uma URL externa para consultas no Lake. As consultas KQL executadas no ambiente do data lake não suportam a chamada de pontos de extremidade externos. Remova a chamada de URL externa da consulta.
A execução da consulta excedeu os limites permitidos. As consultas interativas do KQL no data lake são limitadas a 500.000 linhas. Execute a consulta em um trabalho KQL ou use Notebooks.
Não foi possível encontrar a(s) tabela(s) ou podem não ter dados. Verifique se a(s) tabela(s) existe, tem dados ou se o usuário tem permissões. • As tabelas especificadas podem não existir no banco de dados.
• Você pode não ter permissões para acessar as tabelas.
• As tabelas podem existir, mas não têm dados, resultando em nenhuma saída significativa.
Confirme a existência da tabela, a disponibilidade dos dados e as permissões do usuário.
O texto da consulta excedeu o comprimento máximo permitido após a expansão interna. Isso pode ocorrer quando o in() operador é usado com uma variável que contém uma grande lista de itens. • O in() operador pode ser usado 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 em comprimento excessivo.
Reduza o tamanho da lista ou simplifique a consulta.
A execução da consulta excedeu os limites permitidos. Otimize a sua consulta e tente novamente.
Erros semânticos e de sintaxe, por exemplo:
  • Erro semântico: operador 'project': Falha ao resolver a expressão escalar chamada 'Timestamp'
  • Erro semântico: operador 'where': Falha ao resolver a expressão escalar chamada 'Type'
  • Erro de sintaxe: O operador não pode ser o primeiro operador em uma consulta.
  • Erro de sintaxe: expressão ausente
  • Falha ao executar a consulta KQL com erros de validação: O fragmento incompleto é inesperado.
A consulta está malformada e está fazendo referência a tabelas ou colunas que não existem, ou está usando funções escalares inválidas. Verifique a sua consulta e tente novamente.
O cliente não tem acesso a nenhum espaço de trabalho ou forneceu espaço(s) de trabalho inválido(s) no âmbito. A consulta usa uma ID de espaço de trabalho inválida. Insira o ID do espaço de trabalho correto e tente novamente.
Comando de controlo inesperado O uso de comandos de controle (por exemplo, show) não é permitido. Nenhuma ação necessária.

Mensagens de erro da tarefa KQL

Mensagem de erro Causa raiz Ações sugeridas
A tabela de destino especificada não existe no espaço de trabalho de destino. O nome da tabela está incorreto, foi excluído ou ainda não foi criado. Verifique o nome da tabela e verifique se ela existe no espaço de trabalho de destino antes de enviar o trabalho.
A tabela de origem especificada não existe. Uma ou mais tabelas de origem não existem nos espaços de trabalho especificados ou foram excluídas recentemente do seu espaço de trabalho. Verifique se existem tabelas de origem no espaço de trabalho especificado.
O espaço de trabalho ou nome do banco de dados fornecido na consulta é inválido ou inacessível. O banco de dados referenciado não existe ou o trabalho não tem permissões de acesso. Confirme se o nome do banco de dados está correto e acessível a partir do contexto de trabalho.
O espaço de trabalho de destino especificado não existe em suas assinaturas do Azure. O ID ou nome do espaço de trabalho é inválido ou não existe em nenhuma assinatura do Azure em seu locatário. Valide o ID do espaço de trabalho.
O esquema de saída da consulta não corresponde ao esquema da tabela de destino. O número ou nomes de colunas na saída da consulta diferem do esquema da tabela de destino. Atualize o esquema de consulta ou tabela para garantir que eles estejam alinhados.
Os tipos de dados de uma ou mais colunas na saída da consulta não correspondem ao esquema da tabela de destino. Incompatibilidade de tipo entre a saída da consulta e o esquema da tabela; por exemplo, string versus datetime. Verifique se cada coluna na saída da consulta corresponde ao tipo de dados esperado no esquema da tabela.
A consulta KQL não pôde ser executada devido a erros de sintaxe ou lógica. A consulta contém sintaxe inválida, funções sem suporte, tipos de dados sem suporte ou referências incorretas. Teste a consulta em consultas KQL ou Azure Data Explorer antes de usar a consulta no trabalho KQL.
O nome da tarefa KQL deve ser único. O nome do trabalho já existe no inquilino. Forneça um nome exclusivo para o trabalho.
Nome da coluna inválido. Deve começar com uma letra e conter apenas letras, números e sublinhados (_), _ResourceId. O trabalho tem colunas de saída que contêm um formato não suportado. Atualize as colunas de consulta e renomeie.