share facebook facebook twitter menu hatena pocket slack

2011.07.25 MON

CloudFrontのログとAWStatsを使ったログのマージ&ソート(日付)

鈴木 宏康

WRITTEN BY 鈴木 宏康

下記のように、CloudFrontはログを出力することができます。

上記のキャプチャをご覧いただくとわかりますが、CloudFrontのログが選択したS3バケットの プレフィックスで指定したディレクトリに出力されていることが確認できます。

実際のログファイル名は下記のようになっており、gzipで圧縮もされています。

{Bucket}.s3.amazonaws.com/{Optional Prefix You Choose}/{Distribution ID}.{YYYY}-{MM}-{DD}-{HH}.{Unique ID}.gz

詳しくはFile Naming and Timing of File Deliveryを参照して下さい。

そして、下記の複数あるCloudFrontログファイルを、AWStatsのツールでマージとソート(日付)をしてみました。

$ ls -1
XXXXXXXXXXXXXX.2011-04-13-21.55w2iVnZ.gz
XXXXXXXXXXXXXX.2011-04-14-09.s8Bk8mlo.gz
...

ログファイルの中身は下記の通りです。

#Version: 1.0
#Fields: date time x-edge-location sc-bytes c-ip cs-method cs(Host) cs-uri-stem sc-status cs(Referer) cs(User-Agent) cs-uri-query
2010-07-20 10:05:00 NRT4 570 219.117.209.225 GET dhisjetezncwd.cloudfront.net /img/test.jpg 304 - Mozilla/5.0%20(Macintosh;%20U;%20Intel%20Mac%20OS%20X%2010_6_4;%20en-US)%20AppleWebKit/533.4%20(KHTML,%20like%20Gecko)%20Chrome/5.0.375.99%20Safari/533.4 -
2010-07-20 10:05:00 NRT4 872 219.117.209.225 GET dhisjetezncwd.cloudfront.net /favicon.ico 404 - Mozilla/5.0%20(Macintosh;%20U;%20Intel%20Mac%20OS%20X%2010_6_4;%20en-US)%20AppleWebKit/533.4%20(KHTML,%20like%20Gecko)%20Chrome/5.0.375.99%20Safari/533.4 -
...

今回はAWStatsをMacPortsからインストールしており、コマンドは下記の通りです。
(logresolvemerge.plを利用しています)

$ sudo port install awstats
$ /opt/local/www/awstats/tools/logresolvemerge.pl ./*
2011-04-21      13:14:54        MIA3    666     66.249.71.67    GET     dhisjetezncwd.cloudfront.net    /suz-lab.gif    304     -       Googlebot-Image/1.0 -
2011-04-23      03:57:47        FRA2    2681    95.108.241.252  GET     dhisjetezncwd.cloudfront.net    /       200     -       Mozilla/5.0%20(compatible;%20YandexBot/3.0;%20+http://yandex.com/bots)       -
...

上記で、複数のCloudFrontのログファイルをマージし、さらにソート(日付)することができました。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。