正如本文档页面所述
重要
我们build议您使用日志来理解您的内容请求的性质,而不是对所有请求的完整记帐。 CloudFront尽最大努力提供访问日志。 特定请求的日志logging可能在实际处理请求后很长时间内传送,或根本不传送。 在极less数情况下,AWS使用情况跟踪和计费系统中显示的使用情况可能不会显示在CloudFront访问日志中。
我正在build立一个系统,根据他们使用的数据量,我必须向客户开具账单/限制客户。 如果不是日志,我可以使用其他细粒度的访问监视来测量基于对象的带宽使用情况。
注意它在哪里说“在极less数情况下…”
这并不是说Cloudfront访问日志不可靠,只是在Cloudfront中,日志不能保证完全,完全,准确地完全满足可能已经处理的每一个请求,也没有保证Cloudfront永远不会find旧的,搁浅的日志logging,并在以后交付给您。
S3日志logging有一个类似的免责声明:
但是,服务器日志logging的完整性和及时性无法保证。 特定请求的日志logging可能会在实际处理请求后很长时间内传送,也可能根本没有传送。 服务器日志的目的是让您了解您的存储桶的stream量性质。 这并不意味着对所有请求进行完整的logging。 丢失日志logging是很less见的,但是服务器日志logging并不意味着是对所有请求的完整logging。
– http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html
在这两种情况下,措辞不太可能比AWS可以引用的简单的免责声明更重要,如果客户试图根据所收集的日志来争议他们的收费,特别是在计费和日志之间的差异相对较小的情况下次要。
根据我的经验,包含过去很多请求的日志已经发生,但是这些日志并不常见,当我去Cloudfront日志中寻找具体请求的详细信息时,它们就已经在那里了。
收集Cloudfront日志,并将其与您的详细帐单进行比较。 如果不存在重大的不一致性,那么我认为没有必要对这个免责声明的含义给予重大的关注。
创build额外的CloudFront分配没有任何成本,所以我build议至less创build一个每个客户端的分配。 结合AWS使用情况报告,每个客户端的一个分布将允许您看到相当详细的信息。 使用情况报告与访问日志不同。 查看文档:
具体而言,“资源”列将与您的CloudFront分配ID相匹配。