你問S3,但你的上拉報價從CloudFront的文檔。
無論哪種方式,不過,這並不重要。這只是一個警告,說日誌傳送可能有時會延遲,如果延遲,這不是一個錯誤 - 這是一個大規模的分佈式系統的副作用。
兩個服務工作的一個不可思議的規模大,所以定期,事情出錯,系統的一小部分,並最終擱淺的一些日誌或積壓的日誌可能會找到並交付使用。很少,他們甚至可以在幾天或幾周後到達。
沒有事件意味着所有日誌的完成,因爲有這樣一個系統內無單點是意識到了這一點。
但這裏是外賣概念:原木多數將分鐘內到達,但不能保證這一點。一旦開始運行流量並觀察日誌記錄如何工作,您將看到我所指的是什麼。延遲日誌是例外情況,您應該能夠快速瞭解在給定掛鐘時間處理日誌之前需要等待多長時間。只要您跟蹤所處理的內容,稍後可以對該存儲桶進行審覈,以確保您的進程正在捕獲足夠比例的日誌。
由於CloudFront的收到SNI支持,我一直在路由流量到一些在同一區域中的水桶使用EC2我HAProxy的S3桶的日子。這讓我能夠使用自定義主機名和SNI,但也使用HAProxy實時記錄所有存儲桶流量,HAProxy可以將其日誌的副本流式傳輸到日誌收集器,以便通過UDP進行實時分析就像寫入syslog一樣。這種解決方案在性能上沒有可衡量的差異,並且HAProxy在T2級服務器上運行得非常好,因此具有成本效益。當然,您的確會引入更多成本和更多維護成本,但只要您未使用源訪問身份,您甚至可以在 CloudFront和S3之間部署HAProxy 。我的一個較大的服務就是這麼做的,這是Lambda @ Edge之前的一個延期。
你指的是亞馬遜S3 [服務器訪問日誌記錄(http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs。html)還是Amazon CloudFront [訪問日誌](http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html)? –
@JohnRotenstein對不起,我說的是將CloudFront AccessLogs存儲到s3,然後由我在ETL管道中處理。 – lisak