AWS,CloudWatch
CloudWatch LogsのイベントをS3にエクスポートしたい
CloudWatch Logsは従量課金制
- CloudWatch Logsは初期費用や最低利用料金はかかりませんが、支払いは従量課金制です。
- 東京リージョンの場合、以下の費用が掛かります(2019/7/10現在)。
収集 (データの取り込み): 0.76 USD/GB
保存 (アーカイブ): 0.033 USD/GB
- 用途は異なるものの、ログを保存する目的の場合、S3 を使用する方が安価です。
CloudWatch Logsのイベントに失効期間を設定する
- CloudWatch Logsの費用を抑えるために、イベントに失効期間を設定します。
- CloudWatch Logsにて、ロググループを選択します。「次の期間経過後にイベントを失効」の設定値が「失効しない」(デフォルト)になっている場合、失効期間を設定します。
- 期間は、選択肢から1日,3日,5日,1週間,2週間,1ヶ月,2ヶ月,3ヶ月,…と希望する期間を選んで設定します。
CloudWatch LogsのイベントをS3にエクスポートする
- CloudWatch Logsのイベントを失効期間経過後も保管したい場合、S3にエクスポートすることも可能です。
S3のバケットポリシーを設定する
- Amazon S3 にエクスポートする機能を使用するには、送信先のバケットへの s3:PutObject アクセス権が必要です。
- S3のバケットポリシーに下記を設定します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "logs.ap-northeast-1.amazonaws.com"
},
"Action": "s3:GetBucketAcl",
"Resource": "arn:aws:s3:::bucketname-for-s3export"
},
{
"Effect": "Allow",
"Principal": {
"Service": "logs.ap-northeast-1.amazonaws.com"
},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::bucketname-for-s3export/*",
"Condition": {
"StringEquals": {
"s3:x-amz-acl": "bucket-owner-full-control"
}
}
}
]
}
ロググループを選択してエクスポートする
- 準備が整ったら、CloudWatch Logsにてロググループを選択し、S3へエクスポートを行います。
- エクスポートするイベントの開始日と終了日をUTCで入力します。エクスポート先のバケットを選択します。異なるアカウントも選択可能です。