Azure Monitor の概要

Azure Monitor には、アプリケーションとサービスの可用性およびパフォーマンスを最大化する効果があります。 クラウドおよびオンプレミス環境のテレメトリを収集、分析し、対応する包括的なソリューションを提供します。 この情報を頼りにアプリケーションの実行状態を把握し、アプリケーションやその依存リソースに影響を及ぼす問題を事前に突き止めることができます。

Azure Monitor でできることの例を次に示します。

注意

このサービスは Azure Lighthouse をサポートしているため、サービス プロバイダーは各自のテナントにサインインして、顧客から委任されたサブスクリプションやリソース グループを管理することができます。

概要

次の図は、Azure Monitor の概要を示します。 図の中央にあるデータ ストアには、Azure Monitor で使用される 2 つの基本的なデータの種類であるメトリックとログを格納します。 左側には、これらのデータ ストアに投入される監視データのソースがあります。 右側には、Azure Monitor が、収集したデータを使って実行するさまざまな機能が示されています。 アクションには、分析、アラート、および外部システムへのストリーミングが含まれます。

Diagram that shows an overview of Azure Monitor.

次のビデオでは上記の図の以前のバージョンを使用していますが、その説明は引き続き関連しています。

モニター データ プラットフォーム

Azure Monitor が収集したすべてのデータは、2 つの基本的な種類であるメトリックとログのどちらかに該当します。 メトリックは、特定の時点におけるシステムの何らかの側面を表す数値です。 それらは軽量であり、ほぼリアルタイムのシナリオをサポートできます。 ログには、種類ごとに異なるプロパティ セットを持つレコードに編成されたさまざまな種類のデータが含まれます。 イベントやトレースなどの利用統計情報は、組み合わせて分析できるように、パフォーマンス データとともにログとして格納されます。

Azure Monitor で収集された多くの Azure リソースのデータは、Azure portal のそれぞれの概要ページで参照できます。 たとえば、任意の仮想マシン (VM) を見てみると、パフォーマンス メトリックが表示されたいくつかのグラフが表示されます。 グラフのいずれかを選択して、Azure portal のメトリック ス エクスプローラーでデータを開きます。 メトリックス エクスプローラーを使用すると、一定期間の複数のメトリックの値をグラフ化できます。 グラフは、対話形式で表示したり、ダッシュボードにピン留めして他の視覚化と一緒に表示したりできます。

Diagram that shows metrics data flowing into Metrics Explorer to use in visualizations.

Azure Monitor が収集したログ データは、収集されたデータをすばやく検索、統合、分析するクエリを使用して分析できます。 Azure portal から Log Analytics を使用してクエリを作成し、テストすることができます。 その後、別のツールを使用してデータを直接分析するか、またはクエリを保存して視覚化アラート ルールに利用することができます。

Azure Monitor では、Kusto クエリ言語の 1 つのバージョンを使用します。この言語は、単純なログ検索に適している一方で、集計、結合、スマート分析など高度な機能も備えています。 さまざまなレッスンを利用すれば、クエリ言語はすぐに覚えることができます。 既に SQLSplunk に習熟しているユーザーには、別途ガイダンスが用意されています。

Diagram that shows logs data flowing into Log Analytics for analysis.

変更分析では、稼働中のサイトの問題、停止、コンポーネント障害、またはその他の変更データに関するアラートが生成されます。 また、これらのアプリケーションの変更に関する分析情報も提供され、可観測性が向上し、平均修復時間が短縮されます。 Microsoft.ChangeAnalysis リソース プロバイダーを Azure Resource Manager サブスクリプションに自動的に登録するには、Azure portal を使用して変更分析に移動します。 Web アプリのゲスト内変更の場合は、問題の診断と解決ツールを使用して、変更分析を有効にできます。

変更分析は Azure Resource Graph に基づいて構築されており、Azure リソースの経時変化の履歴記録を提供します。 また、マネージド ID、プラットフォーム オペレーティング システムのアップグレード、ホスト名の変更を検出します。 変更分析では、IP 構成ルール、TLS 設定、および拡張機能のバージョンについて確実にクエリを実行し、より詳細な変更データを提供します。

Azure Monitor が収集するデータ

Azure Monitor では、アプリケーションから、それが依存するオペレーティング システムとサービス、プラットフォーム自体にまで及ぶソースからデータを収集できます。 Azure Monitor では、以下のそれぞれの層からデータが収集されます。

  • アプリケーション監視データ:プラットフォームを問わず、記述したコードのパフォーマンスと機能に関するデータ。
  • ゲスト オペレーティング システム監視データ: アプリケーションが実行されているオペレーティング システムに関するデータ。 システムは Azure、別のクラウド、またはオンプレミスで実行できます。
  • Azure リソース監視データ: Azure リソースの操作に関するデータ。 メトリックまたはログのあるリソースの詳細な一覧については、Azure Monitor で監視できる内容に関するページを参照してください。
  • Azure サブスクリプション監視データ:Azure サブスクリプションの操作および管理に関するデータと、Azure 自体の正常性および操作に関するデータ。
  • Azure テナントの監視データ: Azure Active Directory など、テナント レベルの Azure サービスの操作に関するデータ。
  • Azure リソースの変更データ: Azure リソース内の変更に関するデータと、インシデントと問題に対処してトリアージする方法。

Azure サブスクリプションを作成して VM や Web アプリなどのリソースを追加すると、Azure Monitor では即座にデータの収集が開始されます。 リソースが作成または変更されると、アクティビティ ログが記録されます。 リソースの状況や消費しているリソースは、メトリックからわかります。

データの収集をリソースの内部動作にまで拡張するには診断を有効にします。 ゲスト オペレーティング システムからテレメトリを収集したければ、コンピューティング リソースにエージェントを追加します。

ページ ビュー、アプリケーションの要求、例外など、詳細な情報を収集するには、Application Insights を使ったアプリケーションの監視を有効します。 さらにアプリケーションの可用性を検証するには、ユーザー トラフィックをシミュレートする可用性テストを構成します。

カスタム ソース

Azure Monitor では、データ コレクター API を使用して任意の REST クライアントからログ データを収集できます。 カスタム監視シナリオを作成し、他のソースを通じてテレメトリが公開されないリソースも監視対象に含めることができます。

分析情報とキュレーションされた視覚化

データの監視が役立つのは、コンピューティング環境の運用の可視性が高まる場合のみです。 一部の Azure リソース プロバイダーには、"キュレーションされた視覚化" が用意されています。これにより、特定のサービスまたは一連のサービス向けにカスタマイズされた監視エクスペリエンスが提供されます。 通常、最小限の構成が必要です。 より大規模にスケーラブルなキュレーションされた視覚化は "分析情報" と呼ばれ、ドキュメントや Azure portal にはその名前で示されています。

詳細については、Azure Monitor を使用した分析情報とキュレーションされた視覚化の一覧に関する記事を参照してください。 大規模な分析情報については、ここでも説明します。

Application Insights

Application Insights は、クラウドとオンプレミスのどちらにホストされているかにかかわらず、Web アプリケーションの可用性、パフォーマンス、使用状況を監視します。 Azure Monitor の強力なデータ分析プラットフォームを利用すれば、アプリケーションの運用に関する詳しい分析情報が得られます。 これを使用すると、ユーザーからのレポートを待たずにエラーを診断することができます。 Application Insights にはさまざまな開発ツールへの接続ポイントが含まれており、DevOps プロセスをサポートする Visual Studio とも統合されています。

Screenshot that shows Application Insights.

Container insights

Container insights では、Azure Kubernetes Service でホストされるマネージド Kubernetes クラスターにデプロイされているコンテナー ワークロードのパフォーマンスを監視します。 Kubernetes で使用可能なコントローラー、ノード、およびコンテナーから Metrics API 経由でメトリックを収集することにより、パフォーマンスを可視化します。 コンテナーのログも収集されます。 Kubernetes クラスターから監視を有効化すると、コンテナー化されたバージョンの Linux 向けの Log Analytics エージェントを使用してこれらのメトリックとログが自動的に収集されます。

Screenshot that shows container health.

VM insights

VM insights では、利用している Azure VM の大規模な監視が行われます。 Windows VM と Linux VM のパフォーマンスと正常性が分析され、そのさまざまなプロセス、そして相互に関連し合う外部プロセスへの依存関係が特定されます。 このソリューションでは、オンプレミスまたは別のクラウド プロバイダーでホストされている VM について、パフォーマンスおよびアプリケーションの依存関係の監視もサポートされています。

Screenshot that shows VM insights.

重大な状況への応答

効果的な監視ソリューションは、対話形式で監視データを分析できるだけでなく、収集したデータから危機的な状況を識別して事前に応答できる必要があります。 たとえば、この応答は、問題の調査を担当する管理者にテキストまたはメールを送信することが考えられます。 または、自動化されたプロセスを起動して、エラー状態の修正を試みることも考えられます。

警告

Azure Monitor のアラートは、重大な状態を事前に通知し、可能であれば修正のためのアクションを実行しようとします。 メトリックに基づくアラート ルールにより、数値に基づいてほぼリアルタイムのアラートが提供されます。 ログに基づくルールでは、複数ソースのデータにまたがる複雑なロジックを実現できます。

Azure Monitor のアラート ルールは、受信者の一意なセットと複数のルール間で共有できるアクションを含むアクション グループを使用します。 アクション グループを使うと、Webhook を使用してアラートから外部アクションを起動したり、IT サービス マネジメント ツールと統合したりするなど、要件に基づいたアクションを実行することができます。

Screenshot that shows alerts in Azure Monitor with severity, total alerts, and other information.

自動スケール

自動スケールを使用すると、適切な量のリソースを実行して、アプリケーションに対する負荷を処理することができます。 Azure Monitor が収集したメトリックを使用し、負荷の増加に合わせて、いつ自動的にリソースを追加するかを判断するルールを作成しましょう。 アイドル状態のリソースを削除すればコストを削減することができます。 インスタンスの最小数および最大数と、リソースを増減するタイミングを示すロジックを指定します。

Diagram shows autoscale, with several servers on a line labeled Processor Time > 80% and two servers marked as minimum, three servers as current capacity, and five as maximum.

監視データを視覚化する

グラフや表などによる視覚化は、監視データをまとめてさまざまな対象ユーザーに提示する際に利用できる効果的なツールです。 Azure Monitor には、データの視覚化と監視を行うための独自の機能がありますが、それをさまざまな対象ユーザーに公開するには、他の Azure サービスが使用されます。

ダッシュボード

Azure ダッシュボードを使用すると、さまざまな種類のデータを組み合わせて、Azure portal 内の 1 つのペインに表示できます。 ダッシュボードは、他の Azure ユーザーと共有することもできます。 ログ クエリやメトリック グラフの出力を Azure ダッシュ ボードに追加できます。 たとえば、メトリックのグラフ、アクティビティ ログの表、Application Insights の使用状況グラフ、ログ クエリ結果を示すタイルを組み合わせて 1 つのダッシュボードを作成できます。

Screenshot that shows an Azure dashboard, which includes Application and Security tiles and other customizable information.

Workbooks

ブックは、Azure portal 内でデータを分析し、高度な視覚的レポートを作成するための柔軟なキャンバスを提供します。 これを使用すると、Azure 全体から複数のデータ ソースを活用し、それらを結合して、統合された対話型エクスペリエンスにすることができます。 Insights に備わっているブックを使用するか、あらかじめ定義されているテンプレートから独自のブックを作成することができます。

Screenshot that shows workbook examples.

Power BI

Power BI は、さまざまなデータ ソースにわたって対話型の視覚化を提供するビジネス分析サービスです。 組織内外の他のユーザーがデータを使用できるようにする効果的な手段です。 Azure Monitor からログ データを自動的にインポートするように Power BI を構成して、これらの視覚化を利用できます。

Screenshot that shows Power BI.

データの統合とエクスポート

多くの場合、監視データを使用するカスタム ソリューションを構築するために、Azure Monitor と他のシステムを統合したいという要件があります。 このような統合を実現するには、他の Azure サービスと Azure Monitor を連携させます。

Event Hubs

Azure Event Hubs は、ストリーミング プラットフォームとなるイベント インジェスト サービスです。 リアルタイム分析プロバイダーやバッチ処理アダプター、ストレージ アダプターを使用して、データを変換して格納することができます。 Event Hubs を使用すると、パートナー SIEM および監視ツールに対して Azure Monitor データをストリーム配信できます。

Logic Apps

Azure Logic Apps は、さまざまなシステムやサービスと統合されたワークフローを使用して、タスクやビジネス プロセスを自動化するのに使用できるサービスです。 Azure Monitor でメトリックとログの読み取りおよび書き込みを行うアクティビティが用意されています。

API

Azure Monitor のメトリックとログの読み取りや書き込み、生成されたアラートのアクセスには、複数の API が利用できます。 アラートの構成や取得も可能です。 API を使用して、Azure Monitor と統合されたカスタム ソリューションを構築するために、ほぼあらゆることを行うことができます。

次のステップ

各項目の詳細情報

  • メトリックとログ Azure Monitor によって収集されたデータについては、こちらをご覧ください。
  • データ ソース アプリケーションのさまざまなコンポーネントでテレメトリを送信する方法については、こちらをご覧ください。
  • ログ クエリ 収集したデータを分析する場合は、こちらをご覧ください。
  • クラウドのアプリケーションとサービスを監視するためのベスト プラクティス