web-dev-qa-db-ja.com

Amazon S3ログファイルを解析するにはどうすればよいですか?

Amazon S3(シンプルストレージ)ログファイルを解析するための最適なオプションは何ですか?ロギングをオンにしたところ、次のようなログファイルが作成されました。

858e709ba90996df37d6f5152650086acb6db14a67d9aaae7a0f3620fdefb88f files.example.com [08/Jul/2010:10:31:42 +0000] 68.114.21.105 65a011a29cdf8ec533ec3d1ccaae921c 13880FBC9839395C REST.GET.OBJECT example.com/blog/wp-content/uploads/2006/10/kitties_we_cant_stop_here_this_is_bat_country.jpg "GET /example.com/blog/wp-content/uploads/2006/10/kitties_we_cant_stop_here_this_is_bat_country.jpg HTTP/1.1" 200 - 32957 32957 12 10 "http://atlanta.craigslist.org/forums/?act=Q&ID=163218891" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.19) Gecko/2010031422 Firefox/3.0.19" -

ログファイルを自動化するための最適なオプションは何ですか? S3以外のAmazonサービスは使用していません。

2
artlung

Amazonは、AWStatsの使用を推奨しており、 AWStats構成ファイルのセットアップ方法に関する指示 が含まれています。また、AWStatsがインストールされている場所へのログのダウンロードを自動化する方法を設定する必要があります。

個人的には、cronを使用して boto を使用してファイルを取得するPythonスクリプトを開始します。

"""s3logDL.py

Downloads S3 logs and deletes old logs

Usage: python s3logDL.py"""

import sys
import os
from boto.s3 import Connection
import boto.s3

########################


########################

def main(argv):
    s3 = Connection('ACCESS_ID', 'PASSWORD')
    logsBucket = s3.get_bucket('logbucket')

    for b in logsBucket:
        #Download log
        print b.name
        key = logsBucket.get_key(b.name)
        fp = open("/PATH/TO/SAVE/POINT/" + b.name, "w")
        key.get_file(fp)

        #Delete log
        key.delete()

    exit(0)


########################

if __== '__main__':
    main(sys.argv)
2
Chealion

Qloudstat を開始しようとしています。これにより、サービスとしてのS3アカウントの分析が可能になります。

1
David Kocher