Criar consultas básicas de registos do Azure Monitor para extrair informações de dados de registo
Você pode usar consultas de log do Azure Monitor para extrair informações de dados de log. As consultas são uma parte importante da análise de dados de registo que o Azure Monitor recolhe.
No cenário de exemplo, a equipe de operações usa consultas de log do Azure Monitor para examinar a integridade de seu sistema.
Escrever consultas de registos do Azure Monitor com o Log Analytics
Pode encontrar a ferramenta Log Analytics no portal do Azure e utilizá-la para executar consultas de exemplo ou criar as suas próprias consultas:
No portal do Azure, no painel de menu esquerdo, selecione Monitor.
A página Azure Monitor aparece junto com mais opções, incluindo Log de atividades, alertas, métricas e logs.
Selecione Registos.
Aqui, você pode inserir sua consulta e ver a saída.
Escrever consultas com a linguagem Kusto
Você pode usar a Linguagem de Consulta Kusto para consultar informações de log para seus serviços em execução no Azure. Uma consulta Kusto é um pedido só de leitura para processar dados e devolver resultados. Você declarará a consulta em texto sem formatação usando um modelo de fluxo de dados projetado para tornar a sintaxe fácil de ler, gravar e automatizar. A consulta utiliza entidades de esquema organizadas numa hierarquia semelhante à da Base de Dados SQL do Azure: bases de dados, tabelas e colunas.
Uma consulta Kusto consiste em uma sequência de instruções de consulta delimitadas por um ponto-e-vírgula (;
). Pelo menos uma das instruções é uma instrução de expressão de tabela. Uma instrução de expressão de tabela formata os dados organizados como uma tabela de colunas e linhas.
A sintaxe de uma instrução de expressão tabular tem um fluxo de dados tabular de um operador de consulta tabular para outro, começando com uma fonte de dados. Uma fonte de dados pode ser uma tabela em um banco de dados ou um operador que produz dados. Em seguida, os dados fluem através de um conjunto de operadores de transformação de dados que são ligados juntamente com o delimitador de pipe (|
).
Por exemplo, a seguinte consulta Kusto tem uma única instrução de expressão de tabela. A instrução começa com uma referência a uma tabela denominada Events
. Neste caso, a base de dados que aloja esta tabela é implícita e faz parte das informações de ligação. Os dados desta tabela, armazenados em linhas, são filtrados pelo valor da coluna StartTime
. Os dados são filtrados adicionalmente pelo valor da coluna State
. Em seguida, a consulta devolve a contagem das linhas resultantes.
Events
| where StartTime >= datetime(2018-11-01) and StartTime < datetime(2018-12-01)
| where State == "FLORIDA"
| count
Nota
A linguagem de consulta Kusto que o Azure Monitor utiliza é sensível às maiúsculas e minúsculas. Normalmente, as palavras-chave da linguagem são escritas em letras minúsculas. Ao utilizar nomes de tabelas ou colunas numa consulta, certifique-se de que utiliza corretamente as maiúsculas e minúsculas.
Os eventos capturados dos logs de eventos dos computadores monitorados são apenas um tipo de fonte de dados. O Azure Monitor fornece muitos outros tipos de origens de dados. Por exemplo, a origem de dados Heartbeat
comunica o estado de funcionamento de todos os computadores que comunicam com a sua área de trabalho do Log Analytics. Você também pode capturar dados de contadores de desempenho e atualizar registros de gerenciamento.
O seguinte exemplo obtém o registo de heartbeat mais recente de cada computador. O computador é identificado pelo respetivo endereço IP. Neste exemplo, a agregação summarize
com a função arg_max
devolve o registo com o valor mais recente para cada endereço IP.
Heartbeat
| summarize arg_max(TimeGenerated, *) by ComputerIP