Структурирование запросов Log Analytics

Завершено

Администратор istrator создают запросы Log Analytics из данных, хранящихся в выделенных таблицах в рабочей области Log Analytics. Некоторые распространенные выделенные таблицы включают события, системный журнал, пульс и оповещение. При создании запроса язык запросов Kusto (KQL) необходимо определить, какие таблицы в репозитории журналов Azure Monitor содержат нужные данные.

На следующем рисунке показано, как запросы KQL используют выделенные данные таблицы для отслеживаемых служб и ресурсов.

Рисунок, показывающий, как создавать запросы Log Analytics из данных в выделенных таблицах в рабочей области Log Analytics.

Сведения о структуре запросов KQL

Рассмотрим данные выделенной таблицы и структуру запроса журнала KQL.

  • Каждый из выбранных источников данных и решения хранит свои данные в выделенных таблицах в рабочей области Log Analytics.

  • Документация для каждого источника данных и решения включает имя создаваемого типа данных и описание каждого из его свойств.

  • Базовая структура запроса — это исходная таблица, за которой следует ряд команд (называемых операторами).

  • Запрос может иметь цепочку нескольких операторов для уточнения данных и выполнения расширенных функций.

  • Каждый оператор в цепочке запросов начинается с символа |канала.

  • Многие запросы требуют только данных из одной таблицы, но другие запросы могут использовать различные параметры и включать данные из нескольких таблиц.

Примеры запросов журнала KQL

Рассмотрим некоторые распространенные операторы запросов журнала KQL и пример синтаксиса.

Мы можем создавать запросы для поиска данных в StormEvent таблице с пятью записями:

type события severity start duration регион
Water Freezing rain 1 6:00 AM 01-27-2023 3 hours 1, 2
Wind High winds 1 8:00 AM 01-27-2023 12 hours 1, 2, 4, 5
Temperature Below freezing 2 11:00 PM 01-26-2023 10 hours 1, 2, 4, 5
Water Snow 3 4:00 PM 01-26-2023 10 hours 1, 2, 4, 5
Water Flood warning 2 9:00 AM 01-26-2023 10 hours 3

Чтобы найти другие операторы и примеры, просмотрите: анализ данных мониторинга с помощью язык запросов Kusto - Обучение | Microsoft Learn.

Количество элементов

count Используйте оператор для обнаружения количества записей во входном наборе записей.

В следующем примере возвращается количество записей в StormEvent таблице. Результаты запроса показывают, StormEvent что таблица содержит пять записей.

StormEvent | count

Результаты запроса:

count
5

Возврат первого числа элементов

top Используйте оператор для просмотра первых N-записей входного набора записей, отсортированных по указанным столбцам. Столбцы соответствуют свойствам данных, определенным в выделенной таблице.

В следующем примере возвращаются первые три записи данных для StormEvent. В таблице результатов показаны имя шторма event , серьезность и прогнозируемая длительность.

StormEvent | top 3 by event severity duration

Результаты запроса:

события severity duration
Freezing rain 1 3 hours
High winds 1 12 hours
Below freezing 2 10 hours

Поиск соответствующих элементов

where Используйте оператор, чтобы отфильтровать таблицу до подмножества строк, соответствующих заданному значению предиката. Значение предиката указывает, что искать в таблице, как в where=="find-this".

В следующем примере записей данных фильтруется только для использования только записей StormEvent , которые соответствуют "снегу".

StormEvent | where event=="snow"

Запрос фильтрует одну строку в StormEvent таблице:

type события severity start duration регион
Water Snow 3 4:00 PM 01-26-2023 10 hours 1, 2, 4, 5