2011年7月25日月曜日

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

スズキです。

下記のように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のログをマージ&ソート(日付)することができました。

次は実際にAWStatsで解析してみます。
--------
http://www.suz-lab.com

0 コメント: