技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
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.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Execute KQL queries and manage Azure Data Explorer resources for fast, scalable big data analytics on log, telemetry, and time series data.
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:
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
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
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
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
Explore table structure before querying.
Tools: kusto_table_schema_get
Use for: Understanding data model, query planning
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
When executing queries, common field patterns:
ago(), between(), bin() for time filteringQuery results include:
🔵 Query Patterns:
summarize for aggregations instead of count() alonebin() for time bucketing in time seriesproject to select only needed columnsextend to add calculated fields🟡 Common Functions:
ago(timespan): Relative time (ago(1h), ago(7d))between(start .. end): Range filteringstartswith(), contains(), matches regex: String filteringparse, extract: Extract values from stringspercentiles(), avg(), sum(), max(), min(): Aggregationstake or limit for exploratory queries to avoid large result setssummarize for aggregations instead of client-side processing| 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 namecluster: Kusto cluster name (e.g., "mycluster")database: Database namequery: KQL query string (for query operations)table: Table name (for schema operations)Optional Parameters:
resource-group: Resource group name (for listing operations)tenant: Azure AD tenant IDIf Azure MCP Kusto tools fail, timeout, or are unavailable, use Azure CLI commands as fallback.
| Operation | Azure CLI Command |
|---|---|
| List clusters | az kusto cluster list --resource-group <rg-name> |
| List databases | az kusto database list --cluster-name <cluster> --resource-group <rg-name> |
| Show cluster | az kusto cluster show --name <cluster> --resource-group <rg-name> |
| Show database | az kusto database show --cluster-name <cluster> --database-name <db> --resource-group <rg-name> |
For queries, use the Kusto REST API or direct cluster URL:
az rest --method post \
--url "https://<cluster>.<region>.kusto.windows.net/v1/rest/query" \
--body "{ \"db\": \"<database>\", \"csl\": \"<kql-query>\" }"
Switch to Azure CLI when: