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