Azure Monitor でのログ クエリ
Azure Monitor ログは Azure Data Explorer を基盤としており、ログ クエリは同じ Kusto クエリ言語 (KQL) を使用して作成します。 これは、読みやすく、簡単に作成できるよう設計されたリッチ言語であるため、いくつかの基本的なガイダンスを使用してクエリの作成を開始できます。
クエリを使用する Azure Monitor の領域には、次が含まれます。
- Log Analytics。 Azure portal 内で、ログ クエリを編集したり、その結果を対話形式で分析したりするための主要なツールです。 Azure Monitor の他の場所でログ クエリを使用する場合でも、通常は Log Analytics で作成してテストしてから最終的な場所にコピーします。
- ログの警告ルール。 ワークスペースのデータの問題を事前に特定します。 各警告ルールは、定期的に自動実行されるログ クエリに基づいてます。 結果を検査することで、警告を作成するかどうかが決まります。
- Workbooks。 さまざまな視覚化を使用したログ クエリの結果を、Azure portal の対話形式のビジュアル レポートに含めます。
- Azure ダッシュボード。 クエリの結果を Azure ダッシュボードにピン留めすることで、ログとメトリックのデータをまとめて視覚化し、必要に応じて、他の Azure ユーザーと共有することができます。
- Logic Apps。 Logic Apps を使用して、自動ワークフローでログ クエリの結果を使用します。
- PowerShell。 コマンド ラインまたは Invoke-AzOperationalInsightsQuery を使用する Azure Automation Runbook からのログ クエリの結果を、PowerShell スクリプトで使用します。
- Azure Monitor Logs API。 任意の REST API クライアントのワークスペースからログ データを取得します。 API 要求には Azure Monitor に対して実行するクエリが含まれており、これにより取得するデータを決定します。
- Azure Monitor Query SDK。 .NET、Java、JavaScript、Python 用の慣用的なクライアント ライブラリを使用して、ワークスペースからログ データを取得します。
作業の開始
KQL を使用してログ クエリを作成するための学習を開始するのに最適な方法は、使用可能なチュートリアルとサンプルを活用することです。
- Log Analytics チュートリアル - Log Analytics (Azure portal でクエリを編集および実行するために使用するツール) の機能の使用に関するチュートリアルです。 これを使用すると、クエリ言語を直接操作することなく、単純なクエリを記述することもできます。 以前に Log Analytics を使用したことがない場合は、ここから開始して、他のチュートリアルやサンプルで使用するツールについて理解してください。
- KQL チュートリアル - 基本的な KQL の概念と一般的な演算子に関するガイド付きチュートリアルです。 これは、言語自体とログ クエリの構造をすばやく理解するのに最適な場所です。
- クエリの例 - Log Analytics で使用できるクエリの例について説明します。 クエリは、変更せずに使用することも、KQL を学習するためのサンプルとして使用することもできます。
- クエリ サンプル - さまざまな概念を示すサンプル クエリです。
リファレンス ドキュメント
すべてのコマンドと演算子のリファレンスを含む KQL のドキュメントは、Azure Data Explorer のドキュメントで入手できます。 KQL の使用に習熟している場合でも、これまでに使用したことのない新しいコマンドやシナリオを調べるために、定期的にリファレンスを使用することがあります。
言語の相違点
Azure Monitor では Azure Data Explorer と同じ KQL が使用されていますが、いくつかの違いがあります。 KQL のドキュメントには、Azure Monitor でサポートされていない、または機能が異なる演算子が明記されます。 Azure Monitor 固有の演算子は、Azure Monitor のコンテンツに記載されています。 以降のセクションでは、クイック リファレンスの言語のバージョン間の違いの一覧を示します。
Azure Monitor でサポートされていないステートメント
Azure Monitor でサポートされていない関数
- cluster()
- cursor_after()
- cursor_before_or_at()
- cursor_current(), current_cursor()
- database()
- current_principal()
- extent_id()
- extent_tags()
Azure Monitor でサポートされていない演算子
Azure Monitor でサポートされていないプラグイン
Azure Monitor で追加されている演算子
以下の演算子は、Azure Monitor の特定の機能をサポートしており、Azure Monitor の外部では使用できません。
次のステップ
- クエリの作成に関するチュートリアルを進めます。
- 完全な Kusto クエリ言語のリファレンス ドキュメントにアクセスします。