Azure Monitor の診断設定を使用すると、 リソース ログ を収集し、 プラットフォーム メトリック と アクティビティ ログ をさまざまな宛先に送信できます。 データを収集するリソースごとに個別の診断設定を作成します。 各設定では、収集するリソースのデータと、そのデータの送信先を定義します。 この記事では、診断設定の作成方法や、データの送信に使用できる宛先など、診断設定の詳細について説明します。
次のビデオでは、診断設定を使用してリソース プラットフォーム ログをルーティングする方法について説明します。 ビデオの録画以降、診断設定に次の変更が加えられましたが、この記事ではこれらのトピックについて説明します。
Warning
そのリソースを削除または名前変更する場合、またはリソース グループまたはサブスクリプション間で移行する場合は、リソースの診断設定を削除します。 診断設定が削除されず、このリソースが再作成された場合は、削除されたリソースの診断設定を新しいリソースに適用できます。 これにより、診断設定で定義されているリソース ログの収集が再開されます。
Sources
診断設定では、次の表のソースからデータを収集できます。 各リンク先のソースとその形式によって収集されるデータの詳細については、リンクされた各記事を参照してください。
データ ソース | Description |
---|---|
プラットフォームのメトリック | 構成なしで自動的に収集されます。 診断設定を使用して、プラットフォーム メトリックを他 の宛先に送信します。 |
アクティビティ ログ | 構成なしで自動的に収集されます。 診断設定を使用して、アクティビティ ログ エントリを他の 宛先に送信します。 |
リソース ログ | 既定では収集されません。 リソース ログを収集するための診断設定を作成します。 |
Destinations
診断設定は、次の表の宛先にデータを送信します。 転送中のデータのセキュリティを確保するために、すべての宛先エンドポイントが TLS 1.2 をサポートするように構成されています。
1 つの診断設定では、各宛先を 1 つだけ定義することができます。 特定の種類の複数の宛先 (たとえば、2 つの異なる Log Analytics ワークスペース) にデータを送信する場合は、複数の設定を作成します。 各リソースには、最大 5 つの診断設定を作成できます。
診断設定で使用される宛先は、設定を作成する前に存在している必要があります。 設定を構成するユーザーが両方のサブスクリプションに対して適切な Azure ロールベースのアクセス制御アクセス権を持っている場合、宛先はログを送信するリソースと同じサブスクリプションに属している必要はありません。 Azure Lighthouse を使用して、別の Microsoft Entra テナントに宛先を含めます。
Destination | Description | Requirements |
---|---|---|
Log Analytics ワークスペース | ログ クエリとワークブックを使用してデータを取得します。 ログ アラートを使用して、データに対して事前にアラートを生成します。 さまざまな Azure リソースで使用されるテーブルについては、 Azure Monitor リソース ログ リファレンスを参照 してください。 | Log Analytics ワークスペース内のすべてのテーブルは、最初のデータがワークスペースに送信されるときに自動的に作成されるため、ワークスペース自体のみが存在する必要があります。 |
Azure Storage アカウント | 監査、静的分析、またはバックアップ用に保存します。 ストレージは他のオプションよりもコストが低く、無期限に保持できます。 変更を防ぐために、変更できないストレージにデータを送信します。 Azure Blob Storage の不変ポリシーの設定と管理に関する説明に従って、ストレージ アカウントの不変ポリシーを設定してください。 | ストレージ アカウントは、リソースがリージョンである場合に監視対象のリソースと同じリージョンに存在する必要があります。 仮想ネットワークが有効になっている場合、診断設定からストレージ アカウントにアクセスできません。 ストレージ アカウント で、このファイアウォール設定をバイパスするように [信頼された Microsoft サービスを許可する] を有効にして、Azure Monitor 診断設定サービスに ストレージ アカウントへのアクセス権が付与されるようにする必要があります。 Azure DNS ゾーン エンドポイント (プレビュー) と Premium ストレージ アカウント は、移行先としてサポートされていません。 Standard ストレージ アカウントはすべてサポートされています。 |
Azure Event Hubs | サードパーティの SIEM やその他の Log Analytics ソリューションなどの外部システムにデータをストリーミングします。 | イベント ハブは、リソースがリージョンである場合に監視対象のリソースと同じリージョンに存在する必要があります。 仮想ネットワークが有効になっている場合、診断設定はイベント ハブにアクセスできません。 ストレージ アカウント で、このファイアウォール設定をバイパスするように [信頼された Microsoft サービスを許可する] を有効にして、Azure Monitor 診断設定サービスに ストレージ アカウントへのアクセス権が付与されるようにする必要があります。 イベント ハブ名前空間の共有アクセス ポリシーは、ストリーミング メカニズムに与えるアクセス許可を定義します。 Event Hubs へのストリーミングには、 Manage 、 Send 、および Listen のアクセス許可が必要です。 ストリーミングを含むように診断設定を更新するには、その Event Hubs 承認規則に対する ListKey アクセス許可が必要です。 |
Azure Monitor パートナー ソリューション | Azure Monitor と Microsoft 以外のその他の監視プラットフォームとの間で特殊な統合を行うことができます。 ソリューションはパートナーによって異なります。 | 詳細については、 Azure Native ISV Services のドキュメント を参照してください。 |
診断設定の作成
診断設定は、次のいずれかの方法で作成できます。
Note
アクティビティ ログの診断設定を作成するには、「アクティビティ ログの エクスポート」を参照してください。
次の手順を使用して、新しい診断設定を作成するか、Azure portal で既存の診断設定を編集します。
リソースのメニューの [監視] セクションで [診断設定] を選択するか、[Azure Monitor] メニューの [設定] で [診断設定] を選択し、リソースを選択します。
[ 診断設定の追加] を選択して新しい設定を追加するか 、編集設定 を選択して既存の設定を編集します。 同じ種類の複数の宛先に送信する場合は、リソースに対して複数の診断設定が必要になる場合があります。 次の例はキー ボールト リソースの設定を示していますが、他のリソースの設定画面も似たようなものになります。
まだ設定されていない場合は、わかりやすい名前を付けます。
ルーティングするログとメトリック: ログの場合は、 カテゴリ グループ を選択するか、後で指定した宛先に送信するデータのカテゴリごとに個々のチェック ボックスをオンにします。 カテゴリの一覧は、Azure サービスごとに異なります。 プラットフォーム メトリックを収集する場合 は、[AllMetrics ] を選択します。
宛先の詳細: 診断設定に含める必要がある各宛先のチェック ボックスをオンにし、それぞれの詳細を指定します。 宛先として Log Analytics ワークスペースを選択した場合は、収集モードの指定が必要になる場合があります。 詳細については、 コレクション モード を参照してください。
カテゴリ グループ
カテゴリ グループを使用すると、個々のログ カテゴリを選択する代わりに、定義済みのグループに基づいてリソース ログを収集できます。 Microsoft では、一般的なユース ケースの監視に役立つグループを定義します。 グループ内のカテゴリが更新されると、ログ コレクションが自動的に変更されます。 すべての Azure サービスでカテゴリ グループが使用されるわけではありません。 特定のリソースに対してカテゴリ グループを使用できない場合、診断設定の作成時にこのオプションは使用できません。
診断設定でカテゴリ グループを使用する場合、個々のカテゴリの種類を選択することはできません。 現時点では、次の 2 つのカテゴリグループがあります。
- allLogs: リソースのすべてのカテゴリ。
- 監査: 顧客とデータまたはサービスの設定との対話を記録するすべてのリソース ログ。 allLogs カテゴリ グループを選択する場合は、このカテゴリ グループを選択する必要はありません。
Note
Azure SQL Database の診断設定で [監査] カテゴリを有効にしても、データベースの監査はアクティブになりません。 データベース監査を有効にするには、Azure Database の監査ブレードから有効にする必要があります。
メトリクスの制約
診断設定を使用して、すべてのメトリックを Log Analytics ワークスペースに送信できるわけではありません。 サポートされているメトリックの一覧の [エクスポート可能] 列を参照してください。
現在、診断設定では多次元メトリックはサポートされていません。 ディメンションを持つメトリックは、フラット化された 1 次元メトリックとしてエクスポートされ、ディメンション値間で集計されます。 たとえば、ブロックチェーンに関する IOReadBytes メトリックは、ノード レベルごとに探索してグラフ化できます。 診断設定を使用してエクスポートすると、エクスポートされたメトリックには、すべてのノードのすべての読み取りバイトが表示されます。
特定のメトリックの制限を回避するには、 Metrics REST API を使用して手動で抽出し、 ログ インジェスト API を使用して Log Analytics ワークスペースにインポートします。
コストの制御
診断設定によって収集されるデータにはコストがかかる場合があります。 コストは、選択した宛先と収集されるデータの量によって異なります。 詳細については、「Azure Monitor の価格」を参照してください。
各サービスに必要なカテゴリのみを収集します。 また、プラットフォーム メトリックはすでにメトリックで収集されているため、Azure リソースからは収集しないことをお勧めします。 ログ クエリを使用してより複雑な分析を行うためにワークスペースにメトリック データが必要な場合にのみ、診断データを構成してメトリックを収集するようにしてください。
診断設定では、選択したカテゴリ内で細かいフィルター処理を行うことはできません。 変換を使用して、Log Analytics ワークスペースでサポートされているテーブルのデータをフィルター処理できます。 詳細については、 Azure Monitor での変換に 関するページを参照してください。
テレメトリが宛先に到達するまでの時間
診断設定を作成すると、90 分以内に選択した宛先へのデータのフローが開始されます。 Log Analytics ワークスペースにデータを送信すると、テーブルがまだ存在しない場合は自動的に作成されます。 テーブルは、最初のログ レコードを受信したときにのみ作成されます。 24 時間以内に情報が得つからない場合は、次のいずれかの問題が発生している可能性があります。
- ログが生成されていない。
- 根本的なルーティング メカニズムに問題が発生している。
問題が発生している場合は、構成を無効にしてから再度有効化してください。 問題が引き続き発生する場合は、Azure portal から Azure サポートにお問い合わせください。
Troubleshooting
メトリック カテゴリはサポートされていません
Resource Manager テンプレート、REST API、Azure CLI、または Azure PowerShell を使用すると、メトリック カテゴリ 'xxxx' はサポートされていません というようなエラーメッセージが表示されることがあります。 AllMetrics
以外のメトリック カテゴリは、限られた数の Azure サービスを除いてサポートされていません。 AllMetrics
以外のメトリック カテゴリ名を削除し、デプロイを繰り返します。
resourceID の ASCII 以外の文字が原因で設定が消える
診断設定では、ASCII 以外の文字 (Preproduccón など) を持つリソース ID はサポートされていません。 Azure でリソースの名前を変更することはできないため、非 ASCII 文字を使用せずに新しいリソースを作成する必要があります。 文字がリソース グループ内にある場合は、そのリソースを新しいグループに移動できます。
非アクティブなリソース
リソースが非アクティブで、ゼロ値のメトリックをエクスポートしている場合、診断設定のエクスポート メカニズムは段階的にバックオフして、ゼロ値のエクスポートと保存という不要なコストを回避します。 このバックオフにより、次のゼロ以外の値のエクスポートが遅延する可能性があります。 この動作は、エクスポートされたメトリックにのみ適用され、メトリックベースのアラートや自動スケーリングには影響しません。
リソースが 1 時間非アクティブになると、エクスポート メカニズムは 15 分に戻ります。 つまり、次のゼロ以外の値がエクスポートされるまでに最大 15 分の待機時間が発生する可能性があります。 7 日間の非アクティブ期間の後、最大 2 時間のバックオフ時間に達します。 リソースがゼロ以外の値のエクスポートを開始すると、エクスポート メカニズムは元のエクスポート待機時間の 3 分に戻ります。
Application Insights のデータを複製する
ワークスペース ベースの Application Insights アプリケーションの診断設定では、Application Insights 自体と同じデータが収集されます。 これにより、コピー先がアプリケーションで使用されているのと同じ Log Analytics ワークスペースである場合、重複データが収集されます。 Application Insights の診断設定を作成して、別の Log Analytics ワークスペースまたは別の宛先にデータを送信します。