ログ出力先選択におけるCloudWatch Logs優先の原則

AWSサービスのログ出力先を選択する際は、CloudWatch Logsに対応しているサービスについては基本的にCloudWatch Logsを優先的に使用し、それ以外はS3を使用します

1.CloudWatch Logsを優先する理由

リアルタイム監視: ログの即座の確認・検索が可能

統合管理: 複数サービスのログを一元管理できる

アラート連携: CloudWatch Alarmsとシームレスに連携

コスト効率: 短期的なログ分析に最適

2.S3を選択する理由

長期保存が必要: 監査ログや構成履歴などの永続的な保管

大量データの保存: アクセスログなど高頻度・大容量のログに対応

分析結果の永続化: クエリ結果やレポートの保存

コンプライアンス要件: セキュリティ検出結果の長期保管とアーカイブ

コストの最適化: 大容量データの長期保存に低コスト

1.ログをCloudWatch Logsに出力するサービス

サービス名ログの種類
EC2【CloudWatch Agentのインストールが必要】
システムログ
アプリケーションログ
Lambda関数実行ログ
Elastic Beanstalkアプリケーションログ
Batchジョブログ
App Runnerアプリケーションログ
ALB【S3からLambdaで転送】
アクセスログ
NLBアクセスログ
ECSコンテナログ
EKSコントロールプレーンログ
Fargateコンテナログ
ECRAPI呼び出しログ
App MeshEnvoyアクセスログ
RDSデータベースログ
Auroraデータベースログ
ElastiCacheエンジンログ
Neptuneデータベースログ
DocumentDBデータベースログ
VPCVPCフローログ
CloudFrontアクセスログ
【Kinesis Data StreamsからLambdaで転送】
リアルタイムログ
Route 53クエリログ
API Gatewayアクセスログ/実行ログ
WAFウェブACLログ
Firewall ManagerAPI呼び出しログ
CloudTrailAPI呼び出しログ
OpenSearchクラスターログ
Glueジョブ実行ログ
EMRクラスターログ
SageMakerトレーニング/推論ログ
X-Rayトレースデータ
EventBridgeイベント配信ログ
Step Functions実行履歴ログ
AppFlowフローの実行ログ
CodeBuildビルドログ
CloudFormationスタックイベントログ
SES送信イベントログ
SNS配達ステータスログ
SSMSession Managerのセッションログ
Run Commandの実行ログ
Automation実行ログ
Patch Managerのログ
CodePipelineビルドログ
CodeDeployデプロイメントログ
エージェントログ
quicksight監査ログ
アクセスログ
cognitoセキュリティ機能のログ
Lambda関数の実行ログ
Global Acceleratorフローログ
FSx監査ログ

2.ログをS3に出力するサービス

サービス名ログの種類
DynamoDBCloudTrailイベント
GuardDuty【EventBridgeからLambdaで転送】
検出結果
Security Hub【EventBridgeからLambdaで転送】
検出結果
Macie【EventBridgeからLambdaで転送】
検出結果
Config構成履歴
Redshift監査ログ
Athenaクエリ結果
S3サーバーアクセスログ
S3 Glacierサーバーアクセスログ