背景

ALBのログはAthenaで分析するのが便利で楽です。

しかし、マネコンを見せたくないという場合もありまして、その場合はS3からアクセスログをダウンロードして解析することになります。

やり方

ダウンロード

以下でダウンロードします。ポイントは、オプションの--recursiveを使用することです。

aws --profile profile-name s3 cp s3://alb-logs/AWSLogs/999999999999/ . --recursive

解凍

s3に格納されているログは圧縮されています。そのため、解凍します。

find ./ -type f -name "*.gz" -exec gunzip {} \;

1つのファイルに集約

後段のkibanaにアップロードするため、解答したファイルを1つのファイルに集約します。

find ./ -type f -name "*.log" | xargs cat

Kibanaを使う

ELKスタックを使います。

ELKスタックは以下のdockerで動くのを使うのが便利です。

https://github.com/deviantony/docker-elk

アップロードサイズを1GBに変更

アップロードできるファイルサイズが小さいので、これを1GBに増やします。

ファイルのアップロード

分析

以下のようにグラフ化されます。