Compreender a estrutura da instrução de Kusto Query Language

Concluído

Uma consulta de KQL é uma solicitação somente leitura para processar dados e retornar resultados. A solicitação é declarada em texto sem formatação, usando um modelo de fluxo de dados criado para facilitar a leitura, a gravação e a automatização da sintaxe. A consulta usa entidades de esquema organizadas em uma hierarquia semelhante a do 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 de tabela, que produz dados organizados em uma malha tipo tabela de colunas e linhas. As instruções de expressão de tabela da consulta produzem os resultados da consulta.

A sintaxe de uma instrução de expressão de tabela tem um fluxo de dados de tabela de um operador de consulta de tabela ao outro. Começando com a fonte de dados, então, fluindo por um conjunto de operadores de transformação de dados unidos com o delimitador de barra vertical (|).

Por exemplo, a consulta a seguir tem uma única instrução, que é uma instrução de expressão de tabela. A instrução começa com uma tabela denominada SecurityEvent. O valor da coluna EventID filtra os dados (linhas) e os resultados são resumidos criando uma coluna para count() por Conta. Na fase de Preparação, os resultados são limitados a 10 linhas.

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

Importante

É fundamental compreender como os resultados fluem por meio do pipe "|". Tudo que está à esquerda do pipe é processado e depois para a direita do pipe.

Acessar o ambiente de demonstração do Log Analytics

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

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

Importante

O banco de dados de demonstração do log Analytics é um ambiente dinâmico. Os eventos registrados nas tabelas desse ambiente são atualizados continuamente com diferentes eventos de segurança. Isso é similar ao que uma pessoa experimentaria em uma configuração de operações de segurança do mundo real. Como resultado, as 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 for executada. Por exemplo, uma consulta na tabela SecurityEvent para "discardEventID = 4688" no último dia poderá não mostrar resultados se esse evento específico ocorreu 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 dado de demonstração no momento em que você executa o script para que a consulta mostre os resultados. Essas configurações de script são semelhantes ao que você faria no mundo real e devem ajudar você a aprender como partes 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 intermediária é o editor de consultas.

  • A área inferior corresponde aos resultados da consulta.

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