Главная · Скиллы · azure-kusto

azure-kustoKQL-запросы к Azure Data Explorer

microsoft/azure-skills

KQL-запросы и управление Azure Data Explorer: логи, телеметрия и time series на больших объёмах данных. Оптимизация запросов и fallback к CLI при таймаутах.

Установка

npx -y skills add microsoft/azure-skills --skill azure-kusto --agent claude-code

Azure Data Explorer (Kusto) — запросы и аналитика

Выполнение KQL-запросов и управление ресурсами Azure Data Explorer для быстрой масштабируемой аналитики больших данных на основе логов, телеметрии и временных рядов.

Когда использовать этот скилл

  • «Запроси мою Kusto-базу на [паттерн данных]»
  • «Покажи события за последний час из Azure Data Explorer»
  • «Анализируй логи в моём ADX-кластере»
  • «Выполни KQL-запрос к [базе данных]»
  • «Какие таблицы есть в моей Kusto-базе?»
  • «Покажи схему таблицы [table]»
  • Запросы IoT-данных, SIEM-аналитика, мониторинг производительности

Обзор

Azure Data Explorer (Kusto) — быстрый высокомасштабируемый сервис исследования данных, оптимизированный для логов и телеметрии. Обеспечивает время отклика менее секунды на миллиардах записей с помощью Kusto Query Language (KQL).

Ключевые возможности:

  • Выполнение запросов: KQL-запросы к массивным датасетам
  • Исследование схемы: обнаружение таблиц, столбцов, типов данных
  • Управление ресурсами: список кластеров и баз данных
  • Аналитика: агрегации, временные ряды, обнаружение аномалий, машинное обучение

Паттерны запросов

Паттерн 1: Базовое получение данных

Events
| where Timestamp > ago(1h)
| take 100

Применение: быстрая инспекция данных, получение последних событий.

Паттерн 2: Агрегационный анализ

Events
| summarize count() by EventType, bin(Timestamp, 1h)
| order by count_ desc

Применение: подсчёт событий, анализ распределения, top-N запросы.

Паттерн 3: Аналитика временных рядов

Telemetry
| where Timestamp > ago(24h)
| summarize avg(ResponseTime), percentiles(ResponseTime, 50, 95, 99) by bin(Timestamp, 5m)
| render timechart

Применение: мониторинг производительности, анализ трендов, обнаружение аномалий.

Паттерн 4: JOIN и корреляция

Events
| where EventType == "Error"
| join kind=inner (
    Logs
    | where Severity == "Critical"
) on CorrelationId
| project Timestamp, EventType, LogMessage, Severity

Применение: анализ первопричин, отслеживание коррелированных событий.

Паттерн 5: Исследование схемы

Инструмент: kusto_table_schema_get. Применение: понимание модели данных, планирование запросов.

Лучшие практики KQL

Оптимизация производительности:

  • Фильтруйте рано: используйте where до join и агрегаций
  • Ограничивайте размер результатов: используйте take или limit
  • Временные фильтры: всегда фильтруйте по временному диапазону
  • Индексированные столбцы: фильтруйте по ним в первую очередь

Паттерны запросов:

  • Используйте summarize для агрегаций
  • Используйте bin() для разбивки по времени в временных рядах
  • Используйте project для выбора только нужных столбцов
  • Используйте extend для добавления вычисляемых полей

Полезные функции:

  • ago(timespan): относительное время (ago(1h), ago(7d))
  • between(start .. end): фильтрация диапазона
  • startswith(), contains(), matches regex: фильтрация строк
  • parse, extract: извлечение значений из строк
  • percentiles(), avg(), sum(), max(), min(): агрегации

MCP-инструменты

ИнструментНазначение
kusto_cluster_listСписок кластеров Azure Data Explorer в подписке
kusto_database_listСписок баз данных в конкретном Kusto-кластере
kusto_queryВыполнение KQL-запросов к базе данных Kusto
kusto_table_schema_getПолучение схемы конкретной таблицы

Запасной вариант — Azure CLI

# Список кластеров
az kusto cluster list --resource-group <rg-name>

# Список баз данных
az kusto database list --cluster-name <cluster> --resource-group <rg-name>

# KQL-запрос через REST API
az rest --method post \
  --url "https://<cluster>.<region>.kusto.windows.net/v1/rest/query" \
  --body "{ \"db\": \"<database>\", \"csl\": \"<kql-query>\" }"

Распространённые проблемы

ПроблемаПричина / Решение
Access DeniedПроверьте разрешения базы данных (минимум роль Viewer для запросов)
Query TimeoutОптимизируйте с временными фильтрами, уменьшите результирующий набор
Syntax ErrorПроверьте KQL-синтаксис: пропущенные pipe, некорректные операторы
Пустые результатыПроверьте временные фильтры (слишком ограничены), имя таблицы
Cluster Not FoundФормат имени кластера без суффикса «.kusto.windows.net»
Задержка инициализацииПотоковые данные могут иметь задержку 1–30 сек в зависимости от метода инициализации

Сценарии использования

  • Анализ логов: логи приложений, системные логи, аудит-логи
  • IoT-аналитика: данные датчиков, телеметрия устройств, мониторинг в реальном времени
  • Аналитика безопасности: SIEM-данные, обнаружение угроз, корреляция событий
  • APM: метрики производительности, поведение пользователей, отслеживание ошибок
  • Бизнес-аналитика: анализ кликстримов, операционные KPI

Из того же репозитория

microsoft-foundryполный цикл AI-агентов на Foundry
microsoft/azure-skills
Деплой, оценка и управление AI-агентами на Microsoft Foundry: контейнеризация, ACR, создание агентов, batch-оценки и оптимизация промптов по данным продакшена.
1.1k364.2k установок
azure-aiAI-сервисы Azure для разработчиков
microsoft/azure-skills
Инструменты Azure AI через MCP для разработчиков: AI Search, Speech, OpenAI и Document Intelligence — интеграция в приложения без управления инфраструктурой.
1.1k362.1k установок
azure-diagnosticsдиагностика проблем в Azure продакшене
microsoft/azure-skills
Систематическая отладка продакшена Azure: Container Apps, Function Apps и AKS. AppLens для root cause, KQL-запросы под конкретные ошибки и crash loops.
1.1k361.8k установок
azure-prepareгенерация Azure-инфраструктуры
microsoft/azure-skills
Генерирует Bicep/Terraform, azure.yaml и Dockerfile для новых и существующих приложений перед деплоем в Azure. Обязательный первый шаг трёхэтапного воркфлоу.
1.1k361.7k установок
azure-deployдеплой подготовленных Azure-приложений
microsoft/azure-skills
Выполняет деплой приложений с готовой инфраструктурой: azd up, azd deploy с проверками и обработкой ошибок. Требует предварительной подготовки через azure-prepare.
1.1k361.7k установок
azure-storageхранилище Azure для разработчиков
microsoft/azure-skills
Управление Azure Storage через MCP или CLI: Blob, File Shares, Queue, Table и Data Lake. Сравнение сервисов, уровни доступа, операции с blob через MCP-инструменты.
1.1k361.4k установок