「Amazon CloudWatch Logs」はAWSが運用を行う、ログ管理のマネージドサービスだ。

 オンプレミス(自社所有)環境とは違い、ユーザーは監視サーバー用のリソースを用意したり管理したりする必要が無い。監視対象やログの種類を指定すれば、EC2インスタンスのリソース状態、アクセスログ、イベントログ、ミドルウエアログ、アプリケーションログなどを取得する(図1)。

図1 CloudWatch Logsによるログ管理システムの構成
図1 CloudWatch Logsによるログ管理システムの構成
[画像のクリックで拡大表示]

 CloudWatch Logsでは、EC2インスタンスに保存している任意のログを取得できる。障害分析、不正利用調査に必要なログは、CloudWatch Logsによって一通り取得できると考えてよい。

 ただし、AWSでの操作ログの取得には「AWS CloudTrail」を、VPCやサブネット、ネットワークインタフェースのログは「VPC Flow Logs」を使う。またDNS(Domain Name System)サービスのRoute 53からDNSクエリーのログを取得することもできる。

 Amazon RDSのような一部のPaaSのログは、CloudWatchのカスタムメトリクスを使うことによって取得することが可能だ。

 今回はCloudWatch LogsとCloudTrailを取り上げ、AWS上のログ管理システムを構築する。まずはCloudWatch Logsの機能について「収集・蓄積」「フィルター・可視化」「アクション・出力」に分けて解説する。