Azure Monitor を監視する
この記事では、次の内容について説明します。
- このサービスに対して収集できる監視データの種類。
- そのデータを分析する方法。
Note
このサービスや Azure Monitor を既に使い慣れていて、監視データの分析方法だけを確認したい場合は、この記事で後述する分析に関するセクションをご覧ください。
Azure リソースに依存するクリティカルなアプリケーションやビジネス プロセスがある場合は、システムを監視し、そのアラートを受け取る必要があります。 Azure Monitor サービスでは、システムのすべてのコンポーネントからメトリックとログを収集して集計します。 Azure Monitor を使用すると、可用性、パフォーマンス、回復性を視覚化し、問題に関する通知を受け取ることができます。 Azure portal、PowerShell、Azure CLI、REST API、またはクライアント ライブラリは、監視データの設定および表示に使用できます。
- Azure Monitor の詳細については、「Azure Monitor の概要」を参照してください。
- Azure リソース全般の監視方法の詳細については、「Azure Monitor を使用した Azure リソースの監視」をご覧ください。
Azure Monitor には、多数の独立した大規模なコンポーネントがあります。 これらの各コンポーネントの監視に関する情報は次のとおりです。
Azure Monitor コア
自動スケール - Azure Monitor の自動スケーリングには、自動スケール設定のパフォーマンスに関する分析情報を提供する診断機能があります。 詳細については、「Azure Monitor の自動スケーリング診断」と「自動スケーリング メトリックを使用したトラブルシューティング」を参照してください。
エージェントの監視 - この対話型エクスペリエンスを使用すれば、Azure、オンプレミス、その他のクラウドにわたって、エージェントの正常性を簡単かつシームレスに監視できるようになります。 詳細については、「Azure Monitor Agent Health」を参照してください。
データ収集規則 (DCR) - 詳細なメトリックとログを使用 して、DCR のパフォーマンスを監視します。
Azure Monitor ログと Log Analytics
Log Analytics Workspace Insights は、ワークスペースを通過するデータ量を示すダッシュボードを提供します。 データ量に基づいてワークスペースのコストを計算できます。
Log Analytics ワークスペースの正常性は、ワークスペースの正常性を監視するために使用できる一連のクエリを提供します。
ログ クエリの最適化とトラブルシューティング - Azure Monitor の KQL ログ クエリは、必要以上に実行に時間がかかったり、まったく戻ってこなかったりすることがあります。 クエリのさまざまな側面を監視することで、トラブルシューティングと最適化を行うことができます。 詳細については、「Azure Monitor ログの監査クエリ」および「ログ クエリの最適化」を参照してください。
ログ インジェスト パイプラインの待機時間 - Azure Monitor は、任意のソースからログを取り込むことができる、非常にスケーラブルなログ インジェスト パイプラインを提供します。 Kusto クエリを使用して、このパイプラインの待機時間を監視できます。 詳細については、「Azure Monitor でのログ データ インジェスト時間」を参照してください
Log Analytics の使用状況 - Log Analytics ワークスペースのデータ インジェストを監視できます。 詳細については、「Log Analytics の使用状況の分析」を参照してください。
すべてのリソース
Azure リソースの正常性 - Azure Monitor リソースはリソース正常性機能に関連付けられており、あらゆる Azure リソースの正常性に関する分析情報を提供します。 詳細については、Resource Health に関するページを参照してください。
リソースの種類
Azure では、リソースの種類と ID の概念を使用して、サブスクリプション内のすべてを識別します。 リソースの種類は、Azure で実行されているすべてのリソースのリソース ID の一部でもあります。 たとえば、Microsoft.Compute/virtualMachines
は、仮想マシンのリソースの種類の 1 つです。 サービスとそれに関連付けられるリソースの種類の一覧については、リソース プロバイダーに関するページをご覧ください。
同様に、Azure Monitor では、コア監視データがリソースの種類 (名前空間とも呼ばれます) に基づいてメトリックとログに整理されます。 リソースの種類に応じてさまざまなメトリックとログが使用できます。 サービスは、複数のリソースの種類に関連付けられる可能性があります。
Azure Monitor のリソースの種類の詳細については、「Azure Monitor の監視データのリファレンス」を参照してください。
データ ストレージ
Azure Monitor の場合:
- メトリック データは、Azure Monitor メトリック データベースに保存されます。
- ログ データは、Azure Monitor ログ ストアに保存されます。 Log Analytics は、Azure portal のツールの 1 つであり、このストアに対してクエリを実行することができます。
- Azure アクティビティ ログは、Azure Portal 内の独自のインターフェイスを持つ別のストアです。
必要に応じて、メトリックおよびアクティビティ ログ データを Azure Monitor ログ ストアにルーティングできます。 次に、Log Analytics を使用してデータのクエリを実行し、他のログ データと関連付けることができます。
多くのサービスで診断設定を使用して、メトリックとログ データを Azure Monitor の外部の他のストレージの場所に送信できます。 たとえば、Azure Storage、ホステッド パートナー システム、Event Hubs を使用する Azure 以外のパートナー システムなどがあります。
Azure Monitor によるデータの保存方法の詳細については、「Azure Monitor データ プラットフォーム」を参照してください。
Azure Monitor プラットフォームのメトリック
Azure Monitor により、ほとんどのサービスに関するプラットフォーム メトリックが提供されます。 これらのメトリックは次のとおりです。
- 名前空間ごとに個別に定義されます。
- Azure Monitor 時系列メトリック データベースに保存されます。
- 軽量であり、凖リアルタイムのアラートをサポートできます。
- リソースのパフォーマンスを時間の経過と共に追跡するために使用されます。
収集: Azure Monitor では、プラットフォーム メトリックを自動的に収集します。 構成は必要ありません。
ルーティング: また、いくつかのプラットフォーム メトリックを Azure Monitor ログまたは Log Analytics にルーティングして、他のログ データを使用してクエリを実行することもできます。 各メトリックの DS エクスポート 設定を確認し、診断設定を使用してメトリックを Azure Monitor ログまたは Log Analytics にルーティングできるかどうかを確認します。
- 詳細については、「メトリック診断設定」を参照してください。
- サービスの診断設定を構成する場合は、「Azure Monitor の診断設定を作成する」を参照してください。
Azure Monitor ですべてのリソースに対して収集できるすべてのメトリックの一覧については、Azure Monitor でサポートされるメトリックに関する記事を参照してください。
Azure Monitor で使用可能なメトリックの一覧については、「Azure Monitor の監視データのリファレンス」をご覧ください。
Azure Monitor リソース ログ
リソース ログでは、Azure リソースによって実行された操作に関する分析情報を提供します。 ログは自動的に生成されますが、保存するかクエリを実行するには、Azure Monitor ログにルーティングする必要があります。 ログはカテゴリに分類されています。 特定の名前空間に複数のリソース ログ カテゴリが含まれる場合があります。
収集: リソース ログは、"診断設定" を作成してログを 1 つ以上の場所にルーティングするまでは収集および保存されません。 診断設定を作成するときは、収集するログのカテゴリを指定します。 診断設定を作成して管理するには、Azure portal、プログラム、Azure Policy など、複数の方法があります。
ルーティング: 既定で推奨されるのは、リソース ログを Azure Monitor ログにルーティングして、他のログ データを使用してクエリを実行できるようにすることです。 Azure Storage、Azure Event Hubs、特定の Microsoft 監視パートナーなど、その他の場所も利用できます。 詳細については、「Azure リソース ログ」およびリソース ログの送信先に関するページを参照してください。
リソース ログの収集、保存、ルーティングの詳細については、「Azure Monitor の診断設定」を参照してください。
Azure Monitor で使用可能なすべてのリソース ログ カテゴリの一覧については、Azure Monitor でサポートされているリソース ログに関するページを参照してください。
Azure Monitor 内のすべてのリソース ログには、同じヘッダー フィールドの後にサービス固有のフィールドがあります。 共通のスキーマの概要については、Azure Monitor リソース ログのスキーマに関する記事をご覧ください。
使用可能なリソース ログ カテゴリ、それに関連する Log Analytics テーブル、および Azure Files のログ スキーマについては、「Azure Monitor の監視データのリファレンス」をご覧ください。
Azure activity log
アクティビティ ログには、Azure リソースごとに操作を追跡する、そのリソースの外から見たサブスクリプションレベルのイベント (新しいリソースの作成や仮想マシンの起動など) が含まれます。
収集: アクティビティ ログ イベントは、Azure portal で表示するために、個別のストアに自動的に生成および収集されます。
ルート指定: アクティビティ ログ データを Azure Monitor ログに送信して、他のログ データと共に分析できます。 Azure Storage、Azure Event Hubs、特定の Microsoft 監視パートナーなど、その他の場所も利用できます。 アクティビティ ログをルーティングする方法の詳細については、Azure アクティビティ ログの概要に関するページをご覧ください。
監視データを分析する
監視データを分析するためのツールは多数あります。
Azure Monitor ツール
Azure Monitor は、次の基本的なツールをサポートします。
メトリックス エクスプローラー。Azure リソースのメトリックを表示および分析できる Azure portal のツール。 詳細については、「Azure Monitor メトリック ス エクスプローラーを使用したメトリックの分析」を参照してください。
Log Analytics は、Kusto クエリ言語 (KQL) を使用して、ログ データのクエリと分析を可能にする Azure Portal のツールです。 詳細については、「Azure Monitor でログ クエリの使用を開始する」を参照してください。
アクティビティ ログ。表示および基本的な検索用のユーザー インターフェイスが Azure portal に用意されています。 より詳細な分析を行うには、データを Azure Monitor ログにルーティングし、Log Analytics でより複雑なクエリを実行する必要があります。
より複雑な視覚化を可能にするツールは次のとおりです。
- ダッシュボードを使用すると、さまざまな種類のデータを組み合わせて、Azure portal 内の 1 つのペインに表示できます。
- ブック。Azure portal で作成できるカスタマイズ可能なレポート。 ブックには、テキスト、メトリック、ログ クエリを含めることができます。
- Grafana。運用ダッシュボードに優れたオープン プラットフォーム ツール。 Grafana を使用して、Azure Monitor 以外の複数のソースからのデータを含むダッシュボードを作成できます。
- Power BI。さまざまなデータ ソースにわたって対話型の視覚化を提供するビジネス分析サービス。 Azure Monitor からログ データを自動的にインポートするように Power BI を構成して、これらの視覚化を利用できます。
Azure Monitor エクスポート ツール
次の方法を使用して、Azure Monitor から他のツールにデータを取得できます。
メトリック: メトリック用 REST API を使用して、Azure Monitor メトリック データベースからメトリック データを抽出します。 この API では、取得したデータを絞り込むためのフィルター式がサポートされています。 詳細については、Azure Monitor REST API のリファレンスをご覧ください。
ログ: REST API または関連するクライアント ライブラリを使用します。
もう 1 つのオプションは、ワークスペース データのエクスポートです。
Azure Monitor 用 REST API の使用を開始するには、「Azure 監視 REST API のチュートリアル」を参照してください。
Kusto クエリ
Kusto クエリ言語 (KQL) を使用して、Azure Monitor ログ/Log Analytics ストアの監視データを分析できます。
重要
ポータルでサービスのメニューから [ログ] を選択すると、クエリ スコープが現在のサービスに設定された状態で Log Analytics が開きます。 このスコープは、ログ クエリにその種類のリソースのデータのみが含まれることを意味します。 他の Azure サービスのデータを含むクエリを実行する場合は、[Azure Monitor] メニューから [ログ] を選択します。 詳細については、「Azure Monitor Log Analytics のログ クエリのスコープと時間範囲」を参照してください。
いずれかのサービスに関する一般的なクエリの一覧については、Log Analytics クエリ インターフェイスに関するページを参照してください。
各 Azure Monitor コンポーネントの具体的な Kusto クエリについては、この記事の冒頭にあるリンクを参照してください。
Advisor の推奨事項
一部のサービスでは、リソースの操作中にクリティカルな条件や差し迫った変更が発生した場合は、ポータルのサービス [概要] ページにアラートが表示されます。 アラートの詳細と推奨される修正は、左側のメニューの [監視] の下の [アドバイザーのレコメンデーション] に表示されます。 通常の操作中、アドバイザーのレコメンデーションは表示されません。
Azure Advisor の詳細については、Azure Advisor の概要に関するページをご覧ください。
関連するコンテンツ
- Azure Monitor 用に作成されるメトリック、ログ、その他の重要な値のリファレンスについては、「Azure Monitor の監視データのリファレンス」を参照してください。
- Azure リソースの監視に関する一般的な詳細情報については、「Azure Monitor を使用した Azure リソースの監視」を参照してください。