今日の複雑なコンピューティング環境では、クラウドとオンプレミスの両方のサービスに依存する分散アプリケーションが実行されています。 可観測性を有効にするには、分散システムのすべてのレイヤーとコンポーネントから運用データを収集する必要があります。 このデータに関する詳細な分析情報を実行し、組織内の利害関係者の範囲をサポートできるように、さまざまな視点で統合できる必要があります。
Azure Monitor は 、さまざまなソースのデータを収集して、分析、視覚化、アラートに使用できる共通のデータ プラットフォームに集計します。 複数のソースからのデータに対して一貫したエクスペリエンスを提供します。 監視対象のすべてのリソース、および Azure Monitor にデータを格納する他のサービスからのデータを使用して、深い分析情報を得ることができます。
Azure Monitor のオブザーバビリティデータ
メトリック、ログ、分散トレースは、一般に、可観測性の 3 つの柱と呼ばれます。 監視ツールは、監視対象システムの十分な監視を提供するために、これら 3 種類のデータを収集して分析する必要があります。 監視を実現するには、複数の柱からのデータを関連付け、監視対象のリソースのセット全体にわたってデータを集計します。 Azure Monitor は複数のソースのデータを一緒に格納するため、共通のツール セットを使用してデータを関連付け、分析できます。 また、他のサービスのデータをホストするだけでなく、複数の Azure サブスクリプションとテナント間でデータを関連付けます。
Azure リソースでは、大量の監視データが生成されます。 Azure Monitor は、このデータを他のソースからの監視データと共にメトリックまたはログ プラットフォームに統合します。 それぞれは特定の監視シナリオ用に最適化されており、それぞれ Azure Monitor のさまざまな機能がサポートされています。 データ分析、視覚化、アラートなどの機能では、必要なシナリオを最も効率的かつコスト効率の高い方法で実装できるように、違いを理解する必要があります。 Application Insights や Container Insights などの Azure Monitor の分析情報には、2 種類のデータの違いを理解しなくても、特定の監視シナリオに集中できる分析ツールがあります。
メトリック
メトリック は、特定の時点におけるシステムの一部の側面を表す数値です。 それらは一定の間隔で収集され、タイムスタンプ、名前、値、および 1 つまたは複数の定義ラベルで識別されます。 メトリックは、さまざまなアルゴリズムを使用して集計できます。 これらは他のメトリックと比較し、時間の経過に伴う傾向を分析できます。
Azure Monitor のメトリックは、タイムスタンプ付きのデータを分析するために最適化された時系列データベースに格納されます。 タイムスタンプを使用すると、メトリックはアラートや問題の迅速な検出に適しています。 メトリックはシステムのパフォーマンスを示しますが、通常はログと組み合わせて問題の根本原因を特定する必要があります。
Azure Monitor メトリックには、ネイティブ メトリックと Prometheus メトリックの 2 種類のメトリックが含まれています。 Azure Monitor のメトリックに関する 2 つの比較と、データソースを含む Azure Monitor メトリックの詳細については、 Azure Monitor のメトリックを参照してください。
ログ
ログ は、システム内で発生したイベントです。 さまざまな種類のデータを含めることができます。また、タイムスタンプ付きの構造化テキストまたはフリーフォーム テキストである場合があります。 これらは、環境内のイベントがログ エントリを生成する場合に散発的に作成される場合があります。 大きな負荷がかかっているシステムでは一般に大量のログが生成されます。
Azure Monitor のログは、強力な分析エンジンと豊富なクエリ言語を提供する Azure Data Explorer に基づく Log Analytics ワークスペースに格納されます。 通常、ログには、識別された問題の完全なコンテキストを示す十分な情報が含まれ、問題の根本原因を識別するのに役立ちます。
注
Azure Monitor ログと Azure のログ データのソースを区別することが重要です。 たとえば、Azure のサブスクリプション レベルのイベントは、Azure Monitor メニューから表示できる アクティビティ ログ に書き込まれます。 ほとんどのリソースは、さまざまな場所に転送できる リソース ログ に運用情報を書き込みます。
Azure Monitor ログは、アクティビティ ログとリソース ログを他の監視データと共に収集して、リソースのセット全体を詳細に分析するログ データ プラットフォームです。
Azure portal で Log Analytics を使用して、ログ クエリを対話形式で操作できます。 Azure ダッシュボード に結果を追加して、他のデータと組み合わせて視覚化することもできます。 スケジュール クエリの結果に基づいてアラートをトリガーする ログ検索アラートを作成できます。
Azure Monitor のログのデータ ソースを含む Azure Monitor ログの詳細については、Azure Monitor のログを参照してください。
分散トレース
トレースは、分散システムを介してユーザー要求に従う一連の関連イベントです。 アプリケーション コードの動作と、さまざまなトランザクションのパフォーマンスを判断するために使用できます。 多くの場合、ログは分散システムの個々のコンポーネントによって作成されますが、トレースは、コンポーネントのセット全体にわたるアプリケーションの操作とパフォーマンスを測定します。
Azure Monitor の分散トレースは、 Application Insights SDK で有効になります。 トレース データは、Application Insights によって収集された他のアプリケーション ログ データと共に格納されます。 これにより、ログ クエリ、ダッシュボード、アラートなどの他のログ データと同じ分析ツールで使用できます。
分散トレースの詳細については、「分散トレース とは」を参照してください。
変遷
変更 は、インフラストラクチャ レイヤーからアプリケーションのデプロイまで、Azure アプリケーションで発生する一連のイベントです。 変更は、 変更分析ツールを使用してサブスクリプション レベルでトレースされます。 Change Analysis ツールは、 Azure Resource Graph の機能を基にして、アプリケーションの変更に関する詳細な分析情報を提供することで、可観測性を高めます。
変更分析を有効にすると、Microsoft.ChangeAnalysis
リソース プロバイダーが Azure Resource Manager サブスクリプションに登録され、リソースのプロパティと構成変更データが使用可能になります。 変更分析では、さまざまな管理とトラブルシューティングのシナリオのデータが提供され、問題の原因となった可能性のある変更をユーザーが理解するのに役立ちます。
- 問題の診断と解決ツールを使用して、アプリケーションのトラブルシューティングを行います。
- 変更分析 (クラシック) の概要ポータルとアクティビティ ログを使用して、一般的な管理と監視を実行します。
- 他のシナリオのデータ結果を表示する方法について説明します。
変更分析の詳細については、「 Azure Monitor での変更分析の使用」のデータ ソースを含みます。
監視データの収集
Azure Monitor のさまざまなデータ ソースは、Log Analytics ワークスペース (ログ) または Azure Monitor メトリック データベース (メトリック) またはその両方に書き込みます。 これらのデータ ストアに直接書き込むソースもあれば、Azure Storage などの別の場所に書き込み、ログやメトリックを設定するための構成が必要なソースもあります。
各種類を設定するさまざまなデータ ソースの一覧については、 Azure Monitor のメトリック と Azure Monitor のログに関するページを参照してください。
外部システムにデータをストリーム配信する
Azure のツールを使用して監視データを分析するだけでなく、セキュリティ情報やイベント管理製品などの外部ツールに転送する必要がある場合があります。 通常、この転送は、監視対象のリソースから Azure Event Hubs を介して直接行われます。
一部のソースは、イベント ハブに直接データを送信するように構成できますが、ロジック アプリなどの別のプロセスを使用して必要なデータを取得することもできます。 詳細については、 外部ツールで使用するために Azure 監視データをイベント ハブにストリーミングする方法に関するページを参照してください。
次のステップ
- Azure Monitor のメトリックについて詳しくは、こちらをご覧ください。
- 詳細については、 Azure Monitor のログに関するページを参照してください。
- Azure のさまざまなリソースで 使用できる監視データ について説明します。