2013-05-02 12 views
8

私は最近、Amazon S3でホストされており、オブジェクトの「取得」、「置く」、「リスト」操作の統計を計算するためにログファイルが必要です。Amazon S3のログ遅延

私は、ログファイルが奇妙に整理されていることを確認しました。ログがいつ表示されるかはわかりません(少なくとも20分後ではない)、1つのログファイルに含まれるログの行数はわかりません。

その後、これらのログファイルをダウンロードして分析する必要があります。しかし、私はこれを何回行うのか分かりません。

誰かが助けることができますか?ありがとう。

答えて

13

説明するもの(遅延があり、予測不可能な順序でログファイルを利用できるようになりました)は、予期した動作としてdeclared by AWSです。これは分散システムの性質上、AWS S3はS3サービスを提供するために使用されていますが、同じリクエストが別のサーバーから毎回配信される可能性があります。

唯一の解決策は、遅延を受け入れ、経験する遅延を見て、余分な時間を追加し、この合計遅延で生きることを学ぶことです(30分から60分のようなものが期待されますが、

ログレコードが必要な場合は、自分でソートするか、いくつかのログ処理ソリューションを検索する必要があります。この目的のために正確に提供されているアプリケーションもあります。

ログファイルを非常に短い遅延で取得する必要がある場合は、ログを自分で作成する必要があります。つまり、フロントエンドを作成して実行する必要があります。同じ時間が必要に応じてログを保持します。

私はこのような解決策を実行し、ユーザーは自分のフロントエンドのユーザー名とパスワードとURLを取得します。彼らはリクエストを送信する際に、適切な資格情報を提供し、指定されたリソースを参照できるかどうかを評価し、そうであれば、そのリソースの有効な一時URLを作成し、そのリクエストをリダイレクトします。

しかし、このような前払いのお金(フロントエンドをどこかで実行する必要があります)が少なく、堅牢性が低く、AWS S3に直接アクセスできます。

幸運、ルル。

+0

ありがとうございました!私はこれらのログをダウンロードして分析し、私の統計情報を得ようとします。あなたにとって良い日でありますように。 – Lulu

+0

これはどこにも記載されていますが、ロギングが遅れていますか? :) – Jigar

+1

@ Jigarは「Best Effort Server Log Delivery」(http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html)を参照してください。引用: サーバーアクセスログレコードは、ベストエフォート型で配信されます。ロギング用に適切に設定されたバケットの要求の多くは、配信されるログレコードとなり、ほとんどのログレコードは記録されてから数時間以内に配信されます。 –