26

AWS S3 日志和 AWS CloudTrail 之间有什么区别?在 CloudTrail 的文档中,我看到了这个:

CloudTrail 为 AWS 已经提供的监控功能增加了另一个维度。它不会更改或替换您可能已经在使用的日志记录功能。

4

5 回答 5

20

CloudTrail 跟踪基础设施更改事件的 API 访问,在 S3 中,这意味着创建、删除和修改存储桶(S3 CloudTrail 文档)。它非常专注于修改存储桶的 API 方法。

S3 服务器访问日志记录提供对 S3 存储桶中对象的访问的 Web 服务器样式日志记录。此日志记录对对象是细粒度的,包括只读操作,并包括非 API 访问,如静态网站浏览。

于 2015-12-07T19:59:48.563 回答
19

自从提出这个问题后,AWS 又增加了一项功能,即 CloudTrail 数据事件

目前有3个功能可用:

  1. CloudTrail:在 Bucket 级别记录几乎所有 API 调用Ref
  2. CloudTrail 数据事件:在对象级别Ref记录几乎所有 API 调用
  3. S3 服务器访问日志:它记录了对 S3 对象的几乎所有(尽力而为的服务器日志交付)访问调用。参考

现在,2 和 3 看起来功能相似,但它们有一些差异,可能会促使用户使用其中一个或另一个或两者(在我们的例子中)!以下是我能找到的差异:

  • 两者都在不同的粒度级别上工作。例如,可以为 AWS 账户的所有 S3 存储桶或仅为 S3 存储桶中的某个文件夹设置 CloudTrail 数据事件。而 S3 服务器访问日志将设置在单个存储桶级别
  • S3 服务器访问日志似乎提供了有关 BucketOwner、HTTPStatus、ErrorCode 等日志的更全面的信息。完整列表

Cloudtrail 日志中不可用但在服务器访问日志中可用的信息参考

  • 日志记录的对象大小、总时间、周转时间和 HTTP 引用的字段
  • 生命周期转换、到期、恢复
  • 在批量删除操作中记录键
  • 身份验证失败
  • CloudTrail 不会为未通过身份验证的请求提供日志(其中提供的凭据无效)。但是,它确实包含授权失败的请求 (AccessDenied) 和匿名用户发出的请求的日志。
  • 如果请求是由不同的 AWS 账户发出的,只有当存储桶拥有者拥有或完全访问请求中的对象时,您才会在您的账户中看到 CloudTrail 日志。如果不是这种情况,则只能在请求者帐户中看到日志。但是,相同请求的日志将在您帐户的服务器访问日志中传送,无需任何额外要求。

AWS Support 建议可以使用 CloudTrail 日志做出决策,如果您还需要 CloudTrail 日志中没有的其他信息,则可以使用服务器访问日志。

于 2019-05-22T16:03:38.580 回答
12

在 S3 服务器访问日志上使用 CloudTrail 日志有两个原因:

  1. 您对存储桶级活动日志记录感兴趣。CloudTrail 有,S3 日志没有。
  2. 您有一个涉及 CloudWatch 日志流的日志分析设置。基本的 S3 日志只是将日志事件存储到某个 S3 存储桶上的文件中,然后由您来处理它们(尽管大多数日志分析服务可以为您执行此操作)。

底线:使用 CloudTrail,如果您有需要它的特定场景,则需要额外付费。否则,“标准”S3 服务器访问日志就足够了。

来自 CloudTrail 开发人员指南 ( https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudtrail-logging.html ):

将 CloudTrail 日志与 Amazon S3 服务器访问日志和 CloudWatch Logs 结合使用

您可以将 AWS CloudTrail 日志与 Amazon S3 的服务器访问日志一起使用。CloudTrail 日志为您提供针对 Amazon S3 存储桶级和对象级操作的详细 API 跟踪,而针对 Amazon S3 的服务器访问日志让您可以查看对 Amazon S3 中的数据进行的对象级操作。有关服务器访问日志的更多信息,请参阅 Amazon S3 服务器访问日志。

您还可以将 CloudTrail 日志与 CloudWatch 一起用于 Amazon S3。CloudTrail 与 CloudWatch 日志的集成将 CloudTrail 捕获的 S3 存储桶级 API 活动传送到您指定的 CloudWatch 日志组中的 CloudWatch 日志流。您可以创建 CloudWatch 警报以监控特定 API 活动,并在特定 API 活动发生时接收电子邮件通知。有关用于监控特定 API 活动的 CloudWatch 警报的更多信息,请参阅 AWS CloudTrail 用户指南。有关将 CloudWatch 与 Amazon S3 结合使用的更多信息,请参阅使用 Amazon CloudWatch 监控指标。

于 2019-03-02T09:16:27.490 回答
0

AWS CloudTrail 是一项 AWS 服务,用于记录不同 AWS 资源上的所有账户活动。它还跟踪 IAM 控制台登录等内容。启用 CloudTrail 服务后,您可以转到 CloudTrail 控制台并查看所有活动并应用过滤器。此外,在启用时,您可以选择记录这些活动并将数据发送到 AWS CloudWatch。在 AWS CloudWatch 中,您可以应用过滤器并创建警报以在发生某种活动时通知您。

S3 日志记录为您的 S3 存储桶/对象上的基本活动启用日志记录。

于 2017-01-18T14:23:01.920 回答
-3

CloudTrail 记录访问您的 AWS 账户的 API 调用。这些 CloudTrail 日志存储在 Amazon S3 存储桶中。

两者提供不同的服务。

您从 CloudTrail Doc 共享的定义: CloudTrail 为 AWS 已经提供的监控功能增加了另一个维度。它不会更改或替换您可能已经在使用的日志记录功能。

这意味着您可能已经激活了其他 AWS 服务中提供的一些其他日志记录功能,例如 ELB 日志记录等。但是当您启用 CloudTrail 监控时,您不必担心以前的日志记录功能,因为它们仍然处于活动状态。您将收到来自所有服务的日志。因此,通过启用 CloudTrail 日志记录,它不会更改或替换您可能已经在使用的日志记录功能。

希望能帮助到你.. :)

于 2016-12-14T13:58:37.800 回答