Azureでのログ収集
- 概要
- Azureでのログの種類とログ収集方法
- リソースログ
- 診断設定
- アクティビティログ
- Azure Active Directoryログ
- 仮想マシンのログとデータ収集ルール
- リソースログ
- NSG 診断設定 vs フローログ
- Azureでのログの種類とログ収集方法
概要
Azureでの各リソースのログ収集方法について、体系的に理解できていなかったので、調べた内容をまとめておく。
Azureでのログの種類とログ収集方法
参考:Azure プラットフォーム ログの概要 - Azure Monitor | Microsoft Learn
もっとも重要なログは以下の3種類である。

参考:Azure のセキュリティのログと監査 | Microsoft Learn

リソースログ
リソースログは各Azureリソースで取得できるログのこと。各リソースの使用状況などがわかる。
例えば、ストレージアカウントのリソースログには次のようなものがある。

参考:Azure Blob Storage の監視 - Azure Storage | Microsoft Learn
リソースログで取得できる項目はリソースによって異なる。例えば、Event Hubsでは以下のようなログを取得できる。

参考:Azure Event Hubs データの監視のリファレンス - Azure Event Hubs | Microsoft Learn
診断設定
PaaSリソースのリソースログは一般に診断設定を設定することで、Log Analytics ワークスペース、Event Hubs、Azure ストレージのいずれかにログを収集できる。
診断設定では、通常のログだけでなく、メトリックログも収集できる。ストレージアカウントの場合は、Transactionというメトリックが収集可能。

参考:Azure Storage Analytics のメトリック (クラシック) | Microsoft Learn
アクティビティログ
アクティビティログは、Azureリソースの作成・更新・削除などの操作を記録する。
いつ誰がリソースを作成(削除)したか、というのをログとして残しておくことができる。
セキュリティ要件としてリソースが作成された場合にアラートを通知したいという場合には、アクティビティログを利用する。
アクティビティログは、個別のリソースに対して収集設定できるが、サブスクリプション配下のリソースに対して一括して設定することもできる。
Azureポータルで一括設定をする場合は、Azure モニターのアクティビティログ⇒アクティビティログのエクスポートから設定する。


Azure Active Directoryログ
実質的にはAzure ADのリソースログに過ぎない。誰がいつアクセスしたか示すサインインログや、どういった管理作業を管理者がおこなったかを示す監査ログを収集できる。
Azure ADで収集しているサインインログ、監査ログをLogAnalytics、ストレージアカウント、Event Hubsに転送できる。

仮想マシンのログとデータ収集ルール
仮想マシンのリソースログは、仮想マシンにAzure Monitorエージェントをインストールし、データ収集ルールを設定することで収集することができる。
収集できるログには次の種類がある。
Windows イベント ログはWindows VMで出力しているイベントログを収集する。
Linux SyslogはLinux VMがSyslogに出力しているログを収集する。
パフォーマンスカウンターは、CPU、メモリ、ディスク、ネットワークのメトリックログを収集する。例えば、CPUやディスクの使用率のログを収集する。
代表的なカウンターとして、CPU、メモリ、ディスク使用率に関するカウンターをあげておく。
-
- [Processor](https://d.hatena.ne.jp/keyword/Processor) Information(_Total)% Processor Time
- \Memory% Committed Bytes In Use
- \LogicalDisk(_Total)% Free Space(※空きスペースの割合)
カスタム テキスト ログは、VM上で任意のファイルに出力したログを収集する。
LogAnalyticsにログを収集する場合は、事前にLogAnalyticsワークスペース上にテーブルを作成しておく必要がある。
参考:Azure Monitor エージェントを使用してテキスト ログを収集する - Azure Monitor | Microsoft Learn
NSG 診断設定 vs フローログ
NSGについては、診断設定による収集とNetwork WatcherによるNSGフローログを収集できる。
NSGフローログにはバージョン1/2があり、バージョン2では、フロー状態という概念が導入されており、転送するバイトとパケットに関する情報が保存される。
ネットワーク セキュリティ グループの診断リソース ログ - Azure Virtual Network | Microsoft Learn
NSG フロー ログ - Azure Network Watcher | Microsoft Learn
以上