Compreender a estrutura da instrução Kusto Query Language

Concluído

Uma consulta KQL é uma solicitação somente leitura para processar dados e retornar resultados. A solicitação é declarada em texto simples, usando um modelo de fluxo de dados projetado para tornar a sintaxe fácil de ler, gravar e automatizar. A consulta usa entidades de esquema organizadas em uma hierarquia semelhante ao SQL: bancos de dados, tabelas e colunas.

A consulta consiste em uma sequência de instruções de consulta. Pelo menos uma instrução é uma instrução de expressão tabular que produz dados organizados em uma malha de colunas e linhas semelhante a uma tabela. As instruções de expressão tabular da consulta produzem os resultados da consulta.

A sintaxe da instrução de expressão tabular tem fluxo de dados tabulares de um operador de consulta tabular para outro. Começando com a fonte de dados e, em seguida, fluindo através de um conjunto de operadores de transformação de dados ligados entre si usando o delimitador de pipe (|).

Por exemplo, a consulta a seguir tem uma única instrução, que é uma instrução de expressão tabular. A instrução começa com uma tabela chamada SecurityEvent. O valor da coluna EventID filtra os dados (linhas) e, em seguida, os resultados são resumidos criando uma nova coluna para count() por Account. Em seguida, na fase Preparar, os resultados são limitados a 10 linhas.

Diagrama de K Q L Declaração mostrando dados, condição e evidências.

Importante

É essencial entender como os resultados fluem através do tubo "|". Tudo o que está à esquerda do tubo é processado e depois passado para a direita do tubo.

Acesse o ambiente de demonstração do Log Analytics

A Microsoft fornece acesso a um ambiente para praticar a escrita de instruções KQL. O único requisito é ter uma conta para fazer logon no Azure. Não há cobranças para sua conta do Azure para acessar esse ambiente. Você pode executar as instruções KQL neste módulo no ambiente de demonstração.

Você pode acessar o ambiente de demonstração no site Logs Demo. Se receber a mensagem "Nenhum resultado encontrado", tente alterar o intervalo de tempo.

Importante

O banco de dados de demonstração de análise de log é um ambiente dinâmico. Os eventos registrados nas tabelas nesse ambiente são atualizados continuamente com diferentes eventos de segurança. Isso é semelhante ao que uma pessoa experimentaria em um ambiente de operações de segurança do mundo real. Como resultado, consultas finitas neste treinamento podem não mostrar resultados, dependendo do estado do banco de dados de demonstração no momento em que a consulta é executada. Por exemplo, uma consulta na tabela SecurityEvent para "discardEventID = 4688" no último dia pode não mostrar resultados se esse evento específico tiver ocorrido pela última vez há três dias. Portanto, talvez seja necessário ajustar as variáveis nos scripts listados neste treinamento ad hoc, dependendo de quais dados estão no banco de dados de demonstração no momento em que você executa o script para que a consulta mostre resultados. Esses ajustes de script são semelhantes ao que você executaria no mundo real e devem ajudá-lo a aprender como as partes específicas do script funcionam.

Captura de tela do ambiente de demonstração do Log Analytics.

A janela Consulta tem três seções principais:

  • A área esquerda é uma lista de referência das tabelas no ambiente.

  • A área superior do meio é o Editor de consultas.

  • A área inferior é os Resultados da Consulta.

Antes de executar uma consulta, ajuste o intervalo de tempo para definir o escopo dos dados. Para alterar as colunas de resultados exibidas, selecione a caixa Colunas e escolha as colunas necessárias.