Azure Monitor で変更分析を使用する

重要

Change Analysis は Azure Resource Graph に移行しており、現在、Azure Resource Graph オファリングとしてプレビュー段階にあります。 詳細については、Change Analysis の今後に関するページを参照してください。

標準的な監視ソリューションでは、ライブ サイトの問題、停止、またはコンポーネントの障害が警告されることがありますが、多くの場合はその原因が説明されません。 サイトが 5 分前には機能していて、今は機能していないとしましょう。 この 5 分間でどのような変更があったのでしょうか。

変更分析は、Azure Monitor でのこのような質問に答えるために設計されました。

変更分析は Azure Resource Graph を基に構築されており、次の特長を備えています。

  • Azure アプリケーションの変更に関する分析情報の提供。
  • 可観測性の向上。
  • 平均修復時間 (MTTR) の削減。

注意

現在、変更分析はパブリック Azure Cloud でのみ使用できます。

変更分析アーキテクチャ

変更分析では、インフラストラクチャ レイヤーからアプリケーション デプロイにわたって、さまざまな種類の変更を検出します。 変更分析は、次の機能を備えたサブスクリプション レベルの Azure リソース プロバイダーです。

  • サブスクリプション内のリソース変更を確認する。
  • 問題を引き起こした変更をユーザーが理解するために役立つ、さまざまな診断ツール向けのデータを提供します。

以下の図に、変更分析のアーキテクチャを示します。

変更分析でどのように変更データが取得され、クライアント ツールに提供されるかを示すアーキテクチャ図。

サポートされているリソースの種類

Azure Monitor 変更分析サービスでは、次のような一般的なリソースを含む、すべての Azure リソースの種類でのリソース プロパティ レベルの変更がサポートされます。

  • 仮想マシン
  • 仮想マシン スケール セット
  • App Service
  • Azure Kubernetes Service (AKS)
  • Azure 関数
  • ネットワーク リソース:
    • ネットワーク セキュリティ グループ
    • Virtual Network
    • Application Gateway など。
  • データ サービス:
    • 記憶域
    • SQL
    • Redis Cache
    • Azure Cosmos DB など。

データ ソース

Azure Monitor の変更分析クエリは次のとおりです。

変更分析はまた、リソース依存関係の変更を追跡して、アプリケーションの診断と監視をエンド ツー エンドで行います。

Azure Resource Manager のリソース プロパティの変更

変更分析では、Azure Resource Graph が使用され、アプリケーションをホストしている Azure リソースが時間と共にどのように変更されたかを示す履歴の記録が提供されます。 次の基本的な構成設定は、Azure Resource Manager を使用して設定され、Azure Resource Graph によって追跡されます。

  • マネージド ID
  • プラットフォーム OS のアップグレード
  • ホスト名

リソース構成の変更

Azure Resource Manager を使用して設定した設定に加えて、CLI、Bicep などを使用して、次のような構成設定を設定できます。

  • IP 構成のルール
  • TLS の設定
  • 拡張機能のバージョン

これらの設定の変更は、Azure Resource Graph ではキャプチャされません。 変更分析では、接続文字列の変更など、これらの主要な構成プロパティの変更のスナップショットをキャプチャすることで、このギャップを埋めます。スナップショットでは、構成の変更と変更の詳細が最大 6 時間ごとに取得されます。

リソース構成の変更分析に関する既知の制限事項を参照してください。

Azure 関数と Web Apps の変更 (ゲスト内変更)

変更分析では、30 分ごとに Web アプリケーションの構成の状態がキャプチャされます。 たとえば、アプリケーション環境変数、構成ファイル、WebJob の変更を検出できます。 このツールで差分が計算され、変更点が提示されます。

最新の変更を表示するための [Refresh] (最新の情報に更新) ボタンを選択するスクリーンショット。

次の内容が表示されない場合は、トラブルシューティング ガイドを参照してください。

  • 30 分以内のファイルの変更
  • 6 時間以内の構成の変更

ゲスト内の変更分析に関する既知の制限事項を参照してください。

現在、サイト ルート wwwroot の下にあるテキストベースのファイルで次の拡張子が付くものは、すべてサポートされています。

  • *.json
  • *.xml
  • *.ini
  • *.yml
  • *.config
  • *.properties
  • *.html
  • *.cshtml
  • *.js
  • requirements.txt
  • Gemfile
  • Gemfile.lock
  • config.gemspec

依存関係の変更

リソースの依存関係の変更も、リソースで問題を引き起こす場合があります。 たとえば、Web アプリから Redis キャッシュが呼び出される場合、Redis キャッシュ SKU が Web アプリのパフォーマンスに影響を与える可能性があります。

別の例として、仮想マシンのネットワーク セキュリティ グループでポート 22 が閉じられた場合は、接続エラーが発生します。

Web アプリに関する問題の診断と解決のナビゲーター (プレビュー)

問題を引き起こした可能性のある依存関係とアプリケーション コンポーネントの変更を検出するために、変更分析では Web アプリの DNS レコードが確認されます。

現在、次の依存関係が Web アプリに関する問題の診断と解決 | ナビゲーターでサポートされています。

  • Web Apps
  • Azure Storage
  • Azure SQL

制限事項

  • OS 環境: Azure 関数と Web App のゲスト内変更の場合、変更分析は現在、Linux ではなく Windows 環境でのみ機能します。
  • Web アプリのデプロイの変更: 変更分析ツールでは、コード デプロイの変更情報をすぐに利用できない場合があります。 変更分析で最新の変更を表示するには、 [Refresh](最新の情報に更新) を選択します。
  • 関数と Web App ファイルの変更: ファイルの変更が表示されるまでに最大 30 分かかります。
  • 関数と Web App の構成の変更: 構成変更に対するスナップショット アプローチにより、変更が実際に発生した時点から、構成変更のタイムスタンプが表示されるまでに最大 6 時間かかることがあります。
  • Web アプリのデプロイと構成の変更: サイト拡張機能がこれらの変更を収集して、アプリケーションが所有するディスク領域に格納します。 したがって、データの収集と保存は、アプリケーションの動作の影響を受けます。 不適切な動作をしているアプリケーションが結果に影響しているかどうかを確認します。
  • すべての変更のスナップショット保有期間: リソースの変更分析データは、Azure Resource Graphs (ARG) によって追跡されます。 ARG は、追跡対象リソースのスナップショット履歴を "14 日間" だけ保持します。

よく寄せられる質問

このセクションでは、一般的な質問への回答を示します。

Change Analysis の使用にはコストはかかりますか?

Change Analysis は、追加コストなしで使用できます。 Microsoft.ChangeAnalysis リソース プロバイダーを有効にすると、Change Analysis でサポートされているものはすべて使用できるようになります。

次のステップ