Azure Monitor の診断設定

この記事では、Azure プラットフォームのメトリック、リソース ログ、アクティビティ ログを異なる宛先に送信するための診断設定を作成し、構成する方法について詳しく説明します。

各 Azure リソースには、次の条件を定義する独自の診断設定が必要です。

  • ソース: 設定に定義された宛先に送信するメトリックとログ データの種類。 使用可能な種類は、リソースの種類によって異なります。
  • 宛先: 1 つ以上の宛先。

1 つの診断設定では、各宛先を 1 つだけ定義することができます。 特定の種類の複数の宛先 (たとえば、2 つの異なる Log Analytics ワークスペース) にデータを送信する場合は、複数の設定を作成します。 各リソースには、最大 5 つの診断設定を作成できます。

警告

リソースの削除、リソースの名前変更、または移動、またはリソース グループまたはサブスクリプション間での移行が必要な場合は、最初にその診断設定を削除します。 そうしないと、このリソースを再作成した場合に、各リソースのリソース構成によっては、削除されたリソースの診断設定が新しいリソースに含まれる可能性があります。 診断設定が新しいリソースに含まれている場合、診断設定で定義されているリソース ログの収集が再開され、該当するメトリックとログ データが以前に構成された宛先に送信されます。

また、環境をきれいな状態に保つためにも、削除対象で再利用する予定のないリソースは削除することをお勧めします。

次のビデオでは、診断設定を使用してリソース プラットフォーム ログをルーティングする手順について説明します。 ビデオは以前に行なわれたものです。 次の変更点に注意してください。

  • 現在は 4 つの宛先があります。 プラットフォームのメトリックとログを、特定の Azure Monitor パートナーに送信できます。
  • カテゴリ グループと呼ばれる新機能が 2021 年 11 月に導入されました。

これらの新しい機能に関する情報が、この記事に記載されています。

変換元

診断情報には、次の 3 つのソースがあります。

  • プラットフォームのメトリックは、既定では、構成なしで Azure Monitor のメトリックに自動的に送信されます。
  • プラットフォーム ログ - Azure リソースとそれらが依存している Azure プラットフォームの詳細な診断情報と監査情報が提供されます。
    • リソース ログは、宛先にルーティングされるまで収集されません。
    • アクティビティ ログにより、リソースの作成時や削除時など、リソースの外部からのリソースに関する情報が表示されます。 エントリは単独で存在しますが、他の場所にルーティングすることができます。

メトリック

AllMetrics 設定を使用すると、リソースのプラットフォームのメトリックが他の宛先にルーティングされます。 このオプションは、すべてのリソース プロバイダーに存在するとは限りません。

リソース ログ

リソース ログについては、個別にルーティングするログ カテゴリを選択するか、カテゴリ グループを選択できます。

カテゴリ グループ

Note

カテゴリ グループは、すべてのメトリック リソース プロバイダーに適用されるわけではありません。 プロバイダーが Azure portal の診断設定でそれらを使用できない場合は、Azure Resource Manager テンプレートでも使用できません。

"カテゴリ グループ" を使用すると、個別のログ カテゴリを選択する代わりに、定義済みのグループに基づいてリソース ログを動的に収集できます。 Microsoft が、すべての Azure サービスで特定のユース ケースを監視するのに役立つグループを定義しています。 時間の経過と共に、新しいログが展開されたり、評価が変更されたりして、グループ内のカテゴリが更新される可能性があります。 ログ カテゴリがカテゴリ グループに追加または削除されると、診断設定を更新しなくても、ログ コレクションが自動的に変更されます。

カテゴリ グループを使用する場合、次のようになりました。

  • 個々のカテゴリの種類に基づいてリソース ログを個別に選択できなくなりました。
  • Azure Storage に送信されたログに保持設定を適用できなくなりました。

現時点では、次の 2 つのカテゴリグループがあります。

  • すべて: リソースによって提供されるすべてのリソース ログ。
  • 監査: データまたはサービスの設定に対する顧客の操作を記録するすべてのリソース ログ。 監査ログは、最も関連性の高い監査データを提供しようという各リソース プロバイダーによる試みですが、ユース ケースによっては、監査標準の観点から、十分だとは見なせない場合があります。 上で述べたように、収集される内容は動的であり、時間が経ち、新しいリソース ログ カテゴリが公開されると、Microsoft はこれを変更する場合があります。

"監査" カテゴリ グループは "すべて" カテゴリ グループのサブセットですが、Azure portal と REST API では、これらは別個の設定と見なされます。 "すべて" カテゴリ グループを選ぶと、"監査" カテゴリ グループも選ばれている場合でも、すべての監査ログが収集されます。

次の図は、[診断設定の追加] ページのログ カテゴリ グループを示しています。

A screenshot showing the logs category groups.

Note

Azure SQL Database の監査を有効にしても、Azure SQL Database の監査は有効になりません。 データベース監査を有効にするには、Azure Database の監査ブレードから有効にする必要があります。

アクティビティ ログ

アクティビティ ログの設定」セクションを参照してください。

変換先

プラットフォーム ログとメトリックは、次の表に一覧表示されている宛先に送信できます。

転送中のデータのセキュリティを確保するために、すべての宛先エンドポイントが TLS 1.2 をサポートするように構成されています。

到着地 説明
Log Analytics ワークスペース メトリックは、ログ形式に変換されます。 このオプションは、すべてのリソースの種類で使用できるとは限りません。 Azure Monitor ログ ストア (Log Analytics から検索可能) に送信すると、既存のログ データを使用してクエリ、アラート、および視覚化に統合できます。
Azure Storage アカウント ストレージ アカウントにログとメトリックをアーカイブすると、監査、スタティック分析、またはバックアップに役立ちます。 Azure Monitor ログや Log Analytics ワークスペースを使用する場合と比較すると、ストレージはコストが低く、ログを無期限に保持することができます。
Azure Event Hubs Event Hubs にログとメトリックを送信すると、サードパーティ製の SIEM やその他の Log Analytics ソリューションなどの外部システムにデータをストリームできます。
Azure Monitor パートナー ソリューション Azure Monitor と Microsoft 以外のその他の監視プラットフォームとの間で特殊な統合を行うことができます。 統合はパートナーのいずれかを既に使用している場合に便利です。

アクティビティ ログの設定

アクティビティ ログでは診断設定が使用されますが、個々のリソースではなくサブスクリプション全体に適用されるため、独自のユーザー インターフェイスがあります。 ここに示されている宛先情報は引き続き適用されます。 詳細については、「Azure アクティビティ ログ」をご覧ください。

要件と制限事項

このセクションでは、要件と制限事項について説明します。

テレメトリが宛先に到達するまでの時間

診断設定を行うと、90 分以内にデータが選択した宛先に流れ始めます。 Log Analytics ワークスペースにログを送信すると、テーブルがまだ存在しない場合は自動的に作成されます。 テーブルは、最初のログ レコードを受信したときにのみ作成されます。 24 時間以内に情報が得つからない場合は、次のいずれかの問題が発生している可能性があります。

  • ログが生成されていない。
  • 根本的なルーティング メカニズムに問題が発生している。

問題が発生している場合は、構成を無効にしてから再度有効にしてみてください。 問題が引き続き発生する場合は、Azure portal から Azure サポートにお問い合わせください。

ソースとしてのメトリック

メトリックのエクスポートには特定の制限があります。

  • 診断設定を使用した複数のディメンション メトリックの送信は現在サポートされていません。 ディメンションを含むメトリックは、ディメンション値間で集計され、フラット化された単一ディメンションのメトリックとしてエクスポートされます。 たとえば、ブロックチェーンに関する IOReadBytes メトリックは、ノード レベルごとに探索してグラフ化できます。 ところが、診断設定を介してエクスポートすると、エクスポートされたメトリックには、すべてのノードに対するすべての読み取りバイト数が表示されます。
  • すべてのメトリックが診断設定でエクスポートできるわけではありません。 また、内部的な制限により、すべてのメトリックが Azure Monitor ログまたは Log Analytics にエクスポートできるわけではありません。 詳細については、サポートされるメトリックのリストエクスポート可能な列を参照してください。

特定のメトリックについてこれらの制限を回避するには、メトリック REST API を使用して手動でそれらを抽出できます。 その後、Azure Monitor Data Collector API を使用して、Azure Monitor ログにインポートできます。

宛先の制限事項

診断設定の宛先は、診断設定の作成前に作成する必要があります。 設定を構成するユーザーが両方のサブスクリプションに対して適切な Azure ロールベースのアクセス制御アクセス権を持っている場合、宛先はログを送信するリソースと同じサブスクリプションに属している必要はありません。 Azure Lighthouse を使用して、別の Microsoft Entra テナントのワークスペース、ストレージ アカウント、またはイベント ハブに診断設定を送信することも可能です。

次の表では、リージョン制限など、宛先別の固有要件をまとめてあります。

宛先 要件
Log Analytics ワークスペース このワークスペースは、監視対象のリソースと同じリージョンにする必要はありません。
ストレージ アカウント 他の監視対象外のデータが保存されている既存のストレージ アカウントは使わないでください。 データの種類を分割すると、データへのアクセスをより適切に制御できます。 アクティビティ ログとリソース ログを一緒にアーカイブする場合は、中央の場所にすべての監視データを保持するために、同じストレージ アカウントを使用できます。

データの変更を防ぐには、不変ストレージに送信します。 Azure Blob Storage の不変ポリシーの設定と管理に関する説明に従って、ストレージ アカウントの不変ポリシーを設定してください。 保護された追加 BLOB 書き込みの有効化を含め、このリンク先の記事のすべての手順に従う必要があります。

ストレージ アカウントは、リソースがリージョン別の場合、監視対象のリソースと同じリージョンにする必要があります。

仮想ネットワークが有効になっている場合、診断設定からストレージ アカウントにアクセスできません。 ストレージ アカウント で、このファイアウォール設定をバイパスするように [信頼された Microsoft サービスを許可する] を有効にして、Azure Monitor 診断設定サービスに ストレージ アカウントへのアクセス権が付与されるようにする必要があります。

Azure DNS ゾーン エンドポイント (プレビュー)Azure Premium LRS (ローカル冗長ストレージ) ストレージ アカウントは、ログまたはメトリックの宛先としてサポートされていません。
Event Hubs 名前空間の共有アクセス ポリシーでは、ストリーミング メカニズムが保有するアクセス許可が定義されます。 Event Hubs にストリーミングするには、管理、送信、リッスンの各アクセス許可が必要です。 ストリーミングを含めるように診断設定を更新するには、その Event Hubs の承認規則に対する ListKey アクセス許可が必要です。

イベント ハブ名前空間は、リソースがリージョン別の場合、監視対象のリソースと同じリソースにする必要があります。

仮想ネットワークが有効になっている場合、診断設定から Event Hubs リソースにアクセスできません。 Event Hub で、このファイアウォール設定をバイパスするように [信頼された Microsoft サービスを許可する] を有効にして、Azure Monitor 診断設定サービスに Event Hubs リソースへのアクセス権が付与されるようにする必要があります。
パートナー ソリューション ソリューションはパートナーによって異なります。 詳細については、Azure Native ISV Services のドキュメントを参照してください。

注意事項

Log Analytics ワークスペースに診断ログを格納する場合は、Application Insights に重複データが表示されないようにするために考慮すべき 2 つの点があります。

  • 宛先は、Application Insights リソースの基になっているのと同じ Log Analytics ワークスペースにすることはできません。
  • Application Insights ユーザーに、両方のワークスペースへのアクセスを許可しないようにします。 Log Analytics アクセス制御モードを [Requires workspace permissions] (ワークスペースのアクセス許可が必要) に設定します。 Azure ロールベースのアクセス制御を使用して、Application Insights リソースの基になっている Log Analytics ワークスペースのみにユーザーがアクセスできるようにします。

これらの手順が必要になるのは、Application Insights が、完全なエンドツーエンドのトランザクション操作と正確なアプリケーション マップを提供するために、Log Analytics ワークスペースを含む Application Insight リソース全体のテレメトリにアクセスするためです。 診断ログでは同じテーブル名が使用されるため、ユーザーが同じデータを含む複数のリソースにアクセスできる場合は、重複するテレメトリが表示される可能性があります。

コストの制御

Log Analytics ワークスペースでデータを収集するにはコストがかかるため、各サービスに必要なカテゴリのみを収集します。 リソース ログのデータ量はサービスによって大きく異なります。

また、プラットフォーム メトリックはすでにメトリックで収集されているため、Azure リソースからは収集しないことをお勧めします。 ログ クエリを使用してより複雑な分析を行うためにワークスペースにメトリック データが必要な場合にのみ、診断データを構成してメトリックを収集するようにしてください。 診断設定では、リソース ログを細かくフィルター処理することはできません。

ヒント

Azure Monitor のコストを削減するための戦略については、「コストの最適化と Azure Monitor」を参照してください。

次のステップ