AWS S3のアクセスログを取得する


S3のアクセスログについて

ログの取得には専用のバケットを使用することが推奨されています。
AWSのマニュアルに下記記載があります。

ログを管理しやすくするため、ソースとは別のバケットにアクセスログを保存することをお勧めします。
ソースバケットとターケットバケットが同じである場合、バケットに書き込まれるログに関する追加のログが作成されます。

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/ServerLogs.html

ログを書き出したログが作成されるのですね。
ですので、今回はログ専用のバケットを作成します。

設定

ログを書き出す専用のバケットを作成します。
S3メニューより「バケットを作成する」ボタンをクリックします。

「バケット名」を入力して「作成」をクリックします。

ソースのバケット(アクセスログを取得したいバケット)を選択して「プロパティー」タブを選択して「サーバーアクセスログを記録」をクリックします。

”ログを有効化”を選択して、「ターゲットバケット」で先ほど作成したバケットを選択します。

確認します。

確認の為にバケットにファイルを追加して、ログのバケットを確確認したのですが、待てども待てども反映されません・・・

AWSガイドを記確認すると下記記述がありました。

バケットのログ記録ステータスの変更がログファイルの配信に反映されるまでには時間がかかります。たとえば、バケットのログを有効にする場合、その後数時間に行われるリクエストは記録されることもあれば、されないこともあります。

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/ServerLogs.html

また、下記のような記述がありました。

サーバーアクセスログレコードの配信は、ベストエフォートで行われます。ログ記録用に適切にバケットを設定した場合、そのバケットへのほとんどのリクエストについてログレコードが配信されます。ほとんどのログレコードは、記録された時間から数時間以内に配信されますが、配信間隔は短くなる場合もあります。
サーバーログの完全性や適時性は保証されません。リクエストのログレコードが、リクエストが実際に処理されてからかなり後に配信されたり、配信すらされないこともあり得ます

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/ServerLogs.html

そうなのね💛

30分ほどするとログファイルを確認できました。
結構細かくファイルが作成されますね。
分析が大変そう・・・

,

コメントを残す

メールアドレスが公開されることはありません。