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