示例:通过 Amazon CloudTrail 在 Amazon EventBridge 中跟踪 S3 分批操作任务。 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

示例:通过 Amazon CloudTrail 在 Amazon EventBridge 中跟踪 S3 分批操作任务。

Amazon S3 分批操作任务活动在 Amazon CloudTrail 中记录为事件。您可以在 Amazon EventBridge 中创建自定义规则,然后将这些事件发送到您选择的目标通知资源,例如 Amazon Simple Notification Service (Amazon SNS)。

注意

Amazon EventBridge 是管理事件的首选方式。Amazon CloudWatch Events 和 EventBridge 是相同的底层服务和 API,但 EventBridge 提供了更多功能。您在 CloudWatch 或 EventBridge 中所作的更改将显示在每个控制台中。有关更多信息,请参阅 Amazon EventBridge 用户指南

在 CloudTrail 中记录的 S3 分批操作事件

创建分批操作任务后,它将作为 JobCreated 事件记录在 CloudTrail 中。在任务运行时,它会在处理过程中更改状态,并且其他 JobStatusChanged 事件将记录到 CloudTrail 中。您可以在 CloudTrail 控制台中查看这些事件。有关 CloudTrail 的更多信息,请参阅《Amazon CloudTrail 用户指南》。

注意

CloudTrail 中只记录 S3 分批操作任务 status-change 事件。

例 CloudTrail 记录的 S3 分批操作任务完成事件
{ "eventVersion": "1.05", "userIdentity": { "accountId": "123456789012", "invokedBy": "s3.amazonaws.com" }, "eventTime": "2020-02-05T18:25:30Z", "eventSource": "s3.amazonaws.com", "eventName": "JobStatusChanged", "awsRegion": "us-west-2", "sourceIPAddress": "s3.amazonaws.com", "userAgent": "s3.amazonaws.com", "requestParameters": null, "responseElements": null, "eventID": "f907577b-bf3d-4c53-b9ed-8a83a118a554", "readOnly": false, "eventType": "AwsServiceEvent", "recipientAccountId": "123412341234", "serviceEventDetails": { "jobId": "d6e58ec4-897a-4b6d-975f-10d7f0fb63ce", "jobArn": "arn:aws:s3:us-west-2:181572960644:job/d6e58ec4-897a-4b6d-975f-10d7f0fb63ce", "status": "Complete", "jobEventId": "b268784cf0a66749f1a05bce259804f5", "failureCodes": [], "statusChangeReason": [] } }

用于跟踪 S3 分批操作任务事件的 EventBridge 规则

以下示例说明如何在 Amazon EventBridge 中创建规则,以便将 Amazon CloudTrail 记录的 S3 分批操作事件捕获到您选择的目标。

为此,您可以按照创建用于响应事件的 EventBridge 规则中的所有步骤来创建规则。粘贴以下 S3 分批操作自定义事件模式策略(如果适用),然后选择所需的目标服务。

S3 批处理操作自定义事件模式策略

{ "source": [ "aws.s3" ], "detail-type": [ "Amazon Service Event via CloudTrail" ], "detail": { "eventSource": [ "s3.amazonaws.com" ], "eventName": [ "JobCreated", "JobStatusChanged" ] } }

以下示例是从 EventBridge 事件规则发送到 Amazon Simple Queue Service (Amazon SQS) 的两个分批操作事件。由于分批操作任务在处理期间会经历多种不同的状态(NewPreparingActive 等),因此对于每个任务,您都将收到多条消息。

例 JobCreated 示例事件
{ "version": "0", "id": "51dc8145-541c-5518-2349-56d7dffdf2d8", "detail-type": "Amazon Service Event via CloudTrail", "source": "aws.s3", "account": "123456789012", "time": "2020-02-27T15:25:49Z", "region": "us-east-1", "resources": [], "detail": { "eventVersion": "1.05", "userIdentity": { "accountId": "11112223334444", "invokedBy": "s3.amazonaws.com" }, "eventTime": "2020-02-27T15:25:49Z", "eventSource": "s3.amazonaws.com", "eventName": "JobCreated", "awsRegion": "us-east-1", "sourceIPAddress": "s3.amazonaws.com", "userAgent": "s3.amazonaws.com", "eventID": "7c38220f-f80b-4239-8b78-2ed867b7d3fa", "readOnly": false, "eventType": "AwsServiceEvent", "serviceEventDetails": { "jobId": "e849b567-5232-44be-9a0c-40988f14e80c", "jobArn": "arn:aws:s3:us-east-1:181572960644:job/e849b567-5232-44be-9a0c-40988f14e80c", "status": "New", "jobEventId": "f177ff24f1f097b69768e327038f30ac", "failureCodes": [], "statusChangeReason": [] } } }
例 JobStatusChanged 任务完成事件
{ "version": "0", "id": "c8791abf-2af8-c754-0435-fd869ce25233", "detail-type": "Amazon Service Event via CloudTrail", "source": "aws.s3", "account": "123456789012", "time": "2020-02-27T15:26:42Z", "region": "us-east-1", "resources": [], "detail": { "eventVersion": "1.05", "userIdentity": { "accountId": "1111222233334444", "invokedBy": "s3.amazonaws.com" }, "eventTime": "2020-02-27T15:26:42Z", "eventSource": "s3.amazonaws.com", "eventName": "JobStatusChanged", "awsRegion": "us-east-1", "sourceIPAddress": "s3.amazonaws.com", "userAgent": "s3.amazonaws.com", "eventID": "0238c1f7-c2b0-440b-8dbd-1ed5e5833afb", "readOnly": false, "eventType": "AwsServiceEvent", "serviceEventDetails": { "jobId": "e849b567-5232-44be-9a0c-40988f14e80c", "jobArn": "arn:aws:s3:us-east-1:181572960644:job/e849b567-5232-44be-9a0c-40988f14e80c", "status": "Complete", "jobEventId": "51f5ac17dba408301d56cd1b2c8d1e9e", "failureCodes": [], "statusChangeReason": [] } } }