Skip to content

/azure-kusto

Query and analyze data in Azure Data Explorer (Kusto/ADX) using KQL for log analytics, telemetry, and time series analysis. WHEN: KQL queries, Kusto database queries, Azure Data Explorer, ADX clusters, log analytics, time series data, IoT telemetry, anomaly detection.

From plugin
azure
1.6k35 skills1 MCP

Claude Code

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

SKILL.md

azure-kusto.SKILL.md
name: azure-kusto
description: "Query and analyze data in Azure Data Explorer (Kusto/ADX) using KQL for log analytics, telemetry, and time series analysis. WHEN: KQL queries, Kusto database queries, Azure Data Explorer, ADX clusters, log analytics, time series data, IoT telemetry, anomaly detection."
license: MIT
metadata:
  author: Microsoft
  version: "1.2.2"

Azure Data Explorer (Kusto) Query & Analytics

Execute KQL queries and manage Azure Data Explorer resources for fast, scalable big data analytics on log, telemetry, and time series data.

Overview

This skill enables querying and managing Azure Data Explorer (Kusto), a fast and highly scalable data exploration service optimized for log and telemetry data. Azure Data Explorer provides sub-second query performance on billions of records using the Kusto Query Language (KQL).

Key capabilities:

  • **Query Execution**: Run KQL queries against massive datasets
  • **Schema Exploration**: Discover tables, columns, and data types
  • **Resource Management**: List clusters and databases
  • **Analytics**: Aggregations, time series, anomaly detection, machine learning

Core Workflow

1. **Discover Resources**: List available clusters and databases in subscription. If the target table's location is unknown and multiple candidate clusters, databases, or Log Analytics workspaces exist, batch the search (see Pattern 6) and only report "not found" after all candidates are checked. 2. **Explore Schema**: Retrieve table structures to understand data model 3. **Query Data**: Execute KQL queries for analysis, filtering, aggregation 4. **Analyze Results**: Process query output for insights and reporting

Query Patterns

Pattern 1: Basic Data Retrieval

Fetch recent records from a table with simple filtering.

**Example KQL**:

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

**Use for**: Quick data inspection, recent event retrieval

Pattern 2: Aggregation Analysis

Summarize data by dimensions for insights and reporting.

**Example KQL**:

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

**Use for**: Event counting, distribution analysis, top-N queries

Pattern 3: Time Series Analytics

Analyze data over time windows for trends and patterns.

**Example KQL**:

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

**Use for**: Performance monitoring, trend analysis, anomaly detection

Pattern 4: Join and Correlation

Combine multiple tables for cross-dataset analysis.

**Example KQL**:

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

**Use for**: Root cause analysis, correlated event tracking

Pattern 5: Schema Discovery

Explore table structure before querying.

**Tools**: `kusto_table_schema_get`

**Use for**: Understanding data model, query planning

Pattern 6: Batch Search Across Candidate Sources

When a table's location is unknown and there are several candidate clusters, databases, or workspaces, batch read-only metadata discovery instead of querying candidates one at a time. List tables in each candidate database or workspace and match the exact table name before querying data.

After confirming which sources contain the table, query those sources together when needed:

union workspace('ws1').Requests, workspace('ws2').Requests
| take 1

**Use for**: Locating a table among many candidate resources without confusing an empty result with a missing table

Key Data Fields

When executing queries, common field patterns:

  • **Timestamp**: Time of event (datetime) - use `ago()`, `between()`, `bin()` for time filtering
  • **EventType/Category**: Classification field for grouping
  • **CorrelationId/SessionId**: For tracing related events
  • **Severity/Level**: For filtering by importance
  • **Dimensions**: Custom properties for grouping and filtering

Result Format

Query results include:

  • **Columns**: Field names and data types
  • **Rows**: Data records matching query
  • **Statistics**: Row count, execution time, resource utilization
  • **Visualization**: Chart rendering hints (timechart, barchart, etc.)

KQL Best Practices

**🔵 Query Patterns:**

  • Use `summarize` for aggregations instead of `count()` alone
  • Use `bin()` for time bucketing in time series
  • Use `project` to select only needed columns
  • Use `extend` to add calculated fields

**🟡 Common Functions:**

  • `ago(timespan)`: Relative time (ago(1h), ago(7d))
  • `between(start .. end)`: Range filtering
  • `startswith()`, `contains()`, `matches regex`: String filtering
  • `parse`, `extract`: Extract values from strings
  • `percentiles()`, `avg()`, `sum()`, `max()`, `min()`: Aggregations

Best Practices

  • Filter early with time range filters to optimize query performance and use indexed columns first
  • Use `take` or `limit` for exploratory queries to avoid large result sets
  • Leverage `summarize` for aggregations instead of client-side processing
  • Store frequently-used queries as functions in the database
  • Use materialized views for repeated aggregations
  • Monitor query performance and resource consumption
  • Apply data retention policies to manage storage costs
  • Use streaming ingestion for real-time analytics (< 1 second latency)
  • Integrate with Azure Monitor for operational insights

MCP Tools Used

| Tool | Purpose | |------|---------| | `kusto_cluster_list` | List all Azure Data Explorer clusters in a subscription | | `kusto_database_list` | List all databases in a specific Kusto cluster | | `kusto_query` | Execute KQL queries against a Kusto database | | `kusto_table_schema_get` | Retrieve schema information for a specific table |

**Required Parameters**:

  • `subscription`: Azure subscription ID or display name
  • `cluster`: Kusto cluster name (e.g., "myc
Read more
@microsoft
Ships withazure

Azure work is not just a code problem. It is a decision problem: which service fits this app, what needs to be validated before deployment, which tools should run, and what guardrails matter.

Stars on GitHub

Momentum

stars in total
1.6k
Star history of microsoft/azure-skills on GitHub, a chart by star-history.com

Other skills on azure.

airunway-aks-setup
Auto-invoked

airunway-aks-setup

Set up AI Runway on AKS — from bare cluster to running model. Covers cluster verification, controller install, GPU assessment,…

@microsoft@microsoftInstall Skill
appinsights-instrumentation
Auto-invoked

appinsights-instrument…

Guidance for instrumenting webapps with Azure Application Insights. Provides telemetry patterns, SDK setup, and configuration…

@microsoft@microsoftInstall Skill
azure-ai
Auto-invoked

azure-ai

Build and troubleshoot Azure AI Search, Speech, OpenAI, and Document Intelligence apps. WHEN: AI Search, query search, vector…

@microsoft@microsoftInstall Skill
azure-aigateway
Auto-invoked

azure-aigateway

Configure Azure API Management as an AI Gateway for AI models, MCP tools, and agents. WHEN: semantic caching, token limit,…

@microsoft@microsoftInstall Skill
azure-app-onboard-prereq
Auto-invoked

azure-app-onboard-prer…

Assess whether source code is ready to deploy to Azure — the check BEFORE infrastructure work. Evaluates build health, app…

@microsoft@microsoftInstall Skill
azure-app-onboard
Auto-invoked

azure-app-onboard

End-to-end orchestrator: from a business idea, app idea, or existing app to running Azure deployment with cost estimates and…

@microsoft@microsoftInstall Skill

More skills from other plugins.

configuring-horizon

configuring-horizon

Use this skill whenever the user mentions Horizon by name in a Laravel context. Covers the full Horizon lifecycle: installing…

coolify13d66k
@coollabsio@coollabsioInstall Skill
vercel-cli

vercel-cli

Guides deployment, configuration, and troubleshooting with the Vercel CLI. Use when operating Vercel projects or resources…

vercel2w16k
@vercel@vercelInstall Skill
skypilot

skypilot

Use when launching cloud VMs, Kubernetes pods, or Slurm jobs for GPU/TPU/CPU workloads, training or fine-tuning models on cloud…

@skypilot-org@skypilot-orgInstall Skill
pinme

pinme

Use this skill when the user mentions "pinme", or needs to upload files, store to IPFS, create/publish/deploy websites or…

pinme2mo3.8k
@glitternetwork@glitternetworkInstall Skill

Questions about azure-kusto.

Which coding agents can use azure-kusto?
azure-kusto installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.