azure-kusto
Azure Data Explorer(Kusto/ADX)に対してKQLを使用したクエリと分析を実行し、ログ分析・テレメトリ・時系列データの解析を行うスキルです。KQLクエリの作成、Kustoデータベースへの問い合わせ、ADXクラスターの操作、IoTテレメトリの分析、異常検知などの場面で活用できます。
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.
SKILL.md 本文
Azure Data Explorer (Kusto) クエリ & 分析
KQL クエリを実行し、ログ、テレメトリ、時系列データの高速でスケーラブルなビッグデータ分析のための Azure Data Explorer リソースを管理します。
スキル有効化トリガー
以下のユーザーリクエストで即座にこのスキルを使用してください:
- 「Kusto データベースで [データパターン] をクエリしたい」
- 「Azure Data Explorer の過去 1 時間のイベントを表示してください」
- 「ADX クラスタのログを分析してください」
- 「[データベース] で KQL クエリを実行してください」
- 「Kusto データベースにはどのテーブルがありますか?」
- 「[テーブル] のスキーマを表示してください」
- 「Azure Data Explorer クラスタをリスト表示してください」
- 「テレメトリデータを [ディメンション] で集計してください」
- 「ログから時系列グラフを作成してください」
主要な指標:
- 「Kusto」「Azure Data Explorer」「ADX」「KQL」の言及
- ログ分析またはテレメトリ分析のリクエスト
- 時系列データの探索
- IoT データ分析クエリ
- SIEM またはセキュリティ分析タスク
- 大規模データセットのデータ集計リクエスト
- パフォーマンス監視または APM クエリ
概要
このスキルは、ログおよびテレメトリデータに最適化された、高速でスケーラブルなデータ探索サービスである Azure Data Explorer (Kusto) のクエリと管理を実現します。Azure Data Explorer は Kusto Query Language (KQL) を使用して、数十億レコードに対して 1 秒未満のクエリパフォーマンスを提供します。
主要な機能:
- クエリ実行: 大規模データセットに対して KQL クエリを実行
- スキーマ探索: テーブル、列、データ型を発見
- リソース管理: クラスタとデータベースをリスト表示
- 分析: 集計、時系列、異常検知、機械学習
コアワークフロー
- リソース発見: サブスクリプション内の利用可能なクラスタとデータベースをリスト表示
- スキーマ探索: テーブル構造を取得してデータモデルを理解
- データクエリ: 分析、フィルタリング、集計のための KQL クエリを実行
- 結果分析: クエリ出力を処理してインサイトとレポートを生成
クエリパターン
パターン 1: 基本的なデータ取得
テーブルから最近のレコードを簡単なフィルタリングで取得します。
KQL の例:
Events
| where Timestamp > ago(1h)
| take 100
用途: クイックデータ検査、最近のイベント取得
パターン 2: 集計分析
ディメンション別にデータを集計してインサイトとレポートを得ます。
KQL の例:
Events
| summarize count() by EventType, bin(Timestamp, 1h)
| order by count_ desc
用途: イベント数カウント、分布分析、Top-N クエリ
パターン 3: 時系列分析
時間ウィンドウでデータを分析してトレンドとパターンを検出します。
KQL の例:
Telemetry
| where Timestamp > ago(24h)
| summarize avg(ResponseTime), percentiles(ResponseTime, 50, 95, 99) by bin(Timestamp, 5m)
| render timechart
用途: パフォーマンス監視、トレンド分析、異常検知
パターン 4: 結合と相関
複数テーブルを組み合わせてクロスデータセット分析を行います。
KQL の例:
Events
| where EventType == "Error"
| join kind=inner (
Logs
| where Severity == "Critical"
) on CorrelationId
| project Timestamp, EventType, LogMessage, Severity
用途: 根本原因分析、相関イベント追跡
パターン 5: スキーマ発見
クエリ実行前にテーブル構造を探索します。
ツール: kusto_table_schema_get
用途: データモデルの理解、クエリ計画
主要なデータフィールド
クエリを実行する際の一般的なフィールドパターン:
- Timestamp: イベントの時刻 (datetime) -
ago()、between()、bin()を時間フィルタリングに使用 - EventType/Category: グループ化用の分類フィールド
- CorrelationId/SessionId: 関連イベントの追跡用
- Severity/Level: 重要度によるフィルタリング
- Dimensions: グループ化とフィルタリング用のカスタムプロパティ
結果フォーマット
クエリ結果は以下を含みます:
- Columns: フィールド名とデータ型
- Rows: クエリと一致するデータレコード
- Statistics: 行数、実行時間、リソース使用率
- Visualization: グラフレンダリング ヒント (timechart、barchart など)
KQL ベストプラクティス
🟢 パフォーマンス最適化:
- 早期フィルタリング: 結合と集計の前に
whereを使用 - 結果サイズを制限:
takeまたはlimitでデータ転送量を削減 - 時間フィルタ: 時系列データでは常に時間範囲でフィルタ
- インデックス付き列: インデックス付き列でまずフィルタ
🔵 クエリパターン:
count()単独ではなくsummarizeを集計に使用- 時系列で時間バケット化に
bin()を使用 - 必要な列のみを選択するために
projectを使用 - 計算フィールド追加に
extendを使用
🟡 一般的な関数:
ago(timespan): 相対時間 (ago(1h)、ago(7d))between(start .. end): 範囲フィルタリングstartswith()、contains()、matches regex: 文字列フィルタリングparse、extract: 文字列から値を抽出percentiles()、avg()、sum()、max()、min(): 集計
ベストプラクティス
- クエリパフォーマンスを最適化するために常に時間範囲フィルタを含める
- 大規模な結果セットを避けるため、探索的なクエリでは
takeまたはlimitを使用 - クライアント側処理ではなく
summarizeを集計に活用 - 頻繁に使用されるクエリをデータベースの関数として保存
- 繰り返される集計には具体化ビューを使用
- クエリパフォーマンスとリソース消費を監視
- ストレージコストを管理するためにデータ保持ポリシーを適用
- リアルタイム分析 (< 1 秒レイテンシ) にはストリーミング取り込みを使用
- 運用上のインサイトのために Azure Monitor と統合
MCP ツール
| ツール | 目的 |
|---|---|
kusto_cluster_list | サブスクリプション内のすべての Azure Data Explorer クラスタをリスト表示 |
kusto_database_list | 特定の Kusto クラスタ内のすべてのデータベースをリスト表示 |
kusto_query | Kusto データベースに対して KQL クエリを実行 |
kusto_table_schema_get | 特定テーブルのスキーマ情報を取得 |
必須パラメータ:
subscription: Azure サブスクリプション ID または表示名cluster: Kusto クラスタ名 (例: "mycluster")database: データベース名query: KQL クエリ文字列 (クエリ操作用)table: テーブル名 (スキーマ操作用)
オプショナルパラメータ:
resource-group: リソースグループ名 (リスト表示操作用)tenant: Azure AD テナント ID
フォールバック戦略: Azure CLI コマンド
Azure MCP Kusto ツールが失敗、タイムアウト、または利用不可の場合は、フォールバックとして Azure CLI コマンドを使用します。
CLI コマンドリファレンス
| 操作 | Azure CLI コマンド |
|---|---|
| クラスタのリスト表示 | az kusto cluster list --resource-group <rg-name> |
| データベースのリスト表示 | az kusto database list --cluster-name <cluster> --resource-group <rg-name> |
| クラスタを表示 | az kusto cluster show --name <cluster> --resource-group <rg-name> |
| データベースを表示 | az kusto database show --cluster-name <cluster> --database-name <db> --resource-group <rg-name> |
Azure CLI 経由の KQL クエリ
クエリの場合は、Kusto REST API またはダイレクトクラスタ URL を使用します:
az rest --method post \
--url "https://<cluster>.<region>.kusto.windows.net/v1/rest/query" \
--body "{ \"db\": \"<database>\", \"csl\": \"<kql-query>\" }"
フォールバックするタイミング
以下の場合は Azure CLI に切り替えます:
- MCP ツールがタイムアウトエラーを返す (クエリ > 60 秒)
- MCP ツールが「サービス利用不可」または接続エラーを返す
- MCP ツールの認証失敗
- データベースに既知のデータがあるにもかかわらず空の応答
一般的な問題
- アクセス拒否: データベースパーミッション (クエリ時は最小限 Viewer ロール) を確認
- クエリタイムアウト: 時間フィルタでクエリを最適化、結果セットを削減、またはタイムアウトを増加
- 構文エラー: KQL 構文を確認 - 一般的な問題: パイプの欠落、演算子の誤り
- 空の結果: 時間範囲フィルタを確認 (制限が厳しすぎる可能性)、テーブル名を確認
- クラスタが見つからない: クラスタ名形式を確認 (".kusto.windows.net" サフィックスを除外)
- 高い CPU 使用率: クエリが広すぎる - フィルタを追加、時間範囲を削減、集計を制限
- 取り込みラグ: ストリーミングデータは取り込みメソッドに応じて 1~30 秒のラグがある可能性
ユースケース
- ログ分析: アプリケーションログ、システムログ、監査ログ
- IoT 分析: センサーデータ、デバイステレメトリ、リアルタイム監視
- セキュリティ分析: SIEM データ、脅威検知、セキュリティイベント相関
- APM: アプリケーションパフォーマンスメトリクス、ユーザー行動、エラー追跡
- ビジネスインテリジェンス: クリックストリーム分析、ユーザー分析、運用 KPI
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- microsoft
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/microsoft/azure-skills / ライセンス: MIT
関連スキル
hugging-face-trackio
Trackioを使用してMLトレーニング実験を追跡・可視化できます。トレーニング中のメトリクスログ記録(Python API)、トレーニング診断のアラート発火、ログされたメトリクスの取得・分析(CLI)が必要な場合に活用してください。リアルタイムダッシュボード表示、Webhookを使用したアラート、HF Space同期、自動化向けのJSON出力に対応しています。
btc-bottom-model
ビットコインのサイクルタイミングモデルで、加重スコアリングシステムを搭載しています。日次パルス(4指標、32ポイント)とウィークリー構造(9指標、68ポイント)の2カテゴリーにわたる13の指標を追跡し、0~100のマーケットヒートスコアを算出します。ETFフロー、ファンディングレート、ロング/ショート比率、恐怖・貪欲指数、LTH-MVRV、NUPL、SOPR(LTH+STH)、LTH供給率、移動平均倍率(365日MA、200週MA)、週次RSI、出来高トレンドに対応します。市場サイクル全体を通じて買いと売りの両方の推奨を提供します。ビットコインの底値拾い、BTCサイクルポジション、買い時・売り時、オンチェーン指標、MVRV、NUPL、SOPR、LTH動向、ETFの流出入、ファンディングレート、恐怖指数、ビットコインが過熱状態か、マイナーコスト、暗号資産市場のセンチメント、BTCのポジションサイジング、「今ビットコインを買うべきか」「BTCが天井をつけているか」「オンチェーン指標は何を示しているか」といった質問の際にこのスキルを活用します。
protein_solubility_optimization
タンパク質の溶解性最適化 - タンパク質の溶解性を最適化します。タンパク質の特性を計算し、溶解性と親水性を予測し、有効な変異を提案します。タンパク質配列の特性計算、タンパク質機能の予測、親水性計算、ゼロショット配列予測を含むタンパク質エンジニアリング業務に使用できます。3つのSCPサーバーから4つのツールを統合しています。
research-lookup
Parallel Chat APIまたはPerplexity sonar-pro-searchを使用して、最新の研究情報を検索できます。学術論文の検索にも対応しています。クエリは自動的に最適なバックエンドにルーティングされるため、論文の検索、研究データの収集、科学情報の検証に活用できます。
tree-formatting
ggtree(R)またはiTOL(ウェブ)を使用して、系統樹の可視化とフォーマットを行います。系統樹を図として描画する際、ツリーレイアウトの選択、分類学に基づく枝やラベルの色付け、クレードの折りたたみ、サポート値の表示、またはツリーへのオーバーレイ追加が必要な場合に使用してください。系統推定(protein-phylogenyスキルを使用)やドメイン注釈(今後の独立したスキル)には使用しないでください。
querying-indonesian-gov-data
インドネシア政府の50以上のAPIとデータソースに接続できます。BPJPH(ハラール認証)、BOM(食品安全)、OJK(金融適正性)、BPS(統計)、BMKG(気象・地震)、インドネシア中央銀行(為替レート)、IDX(株式)、CKAN公開データポータル、pasal.id(第三者法MCP)に対応しています。インドネシア政府データを活用したアプリ開発、.go.idウェブサイトのスクレイピング、ハラール認証の確認、企業の法的適正性の検証、金融機関ステータスの照会、またはインドネシアMCPサーバーへの接続時に使用できます。CSRF処理、CKAN API使用方法、IP制限回避など、すぐに実行可能なPythonパターンを含んでいます。