本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS CloudTrail 记录 X-Ray API 调用
AWS X-Ray 与 AWS CloudTrail 集成,以记录 X-Ray 中用户、角色或 AWS 服务的 API 操作。您可以使用 CloudTrail 实时监控 X-Ray API 请求并将日志存储在 Amazon S3、Amazon CloudWatch Logs 和 Amazon CloudWatch Events 中。X-Ray 支持在 CloudTrail 日志文件中将以下操作记录为事件:
支持的 API 操作
创建跟踪
CloudTrail 将您所选类型的 API 调用记录到 Amazon S3 中的日志文件。CloudTrail 日志是 JSON 格式的一系列无序事件。对于支持的 API 操作的每次调用,CloudTrail 会记录请求信息,以及发出请求的实体。日志事件中包含操作名称、参数和 X-Ray 响应,以及请求者的详细信息。
例 X-Ray GetEncryptionConfig 日志条目
{ "eventVersion"=>"1.05", "userIdentity"=>{ "type"=>"AssumedRole", "principalId"=>"AROAJVHBZWD3DN6CI2MHM:MyName", "arn"=>"arn:aws:sts::123456789012:assumed-role/MyRole/MyName", "accountId"=>"123456789012", "accessKeyId"=>"AKIAIOSFODNN7EXAMPLE", "sessionContext"=>{ "attributes"=>{ "mfaAuthenticated"=>"false", "creationDate"=>"2018-9-01T00:24:36Z" }, "sessionIssuer"=>{ "type"=>"Role", "principalId"=>"AROAJVHBZWD3DN6CI2MHM", "arn"=>"arn:aws:iam::123456789012:role/MyRole", "accountId"=>"123456789012", "userName"=>"MyRole" } } }, "eventTime"=>"2018-9-01T00:24:36Z", "eventSource"=>"xray.amazonaws.com", "eventName"=>"GetEncryptionConfig", "awsRegion"=>"us-east-2", "sourceIPAddress"=>"33.255.33.255", "userAgent"=>"aws-sdk-ruby2/2.11.19 ruby/2.3.1 x86_64-linux", "requestParameters"=>nil, "responseElements"=>nil, "requestID"=>"3fda699a-32e7-4c20-37af-edc2be5acbdb", "eventID"=>"039c3d45-6baa-11e3-2f3e-e5a036343c9f", "eventType"=>"AwsApiCall", "recipientAccountId"=>"123456789012" }
元素userIdentity包含有关生成请求的人员的信息。身份信息帮助您确定以下内容:
-
请求是使用根用户凭证还是 IAM 用户凭证发出的。
-
请求是使用角色还是联合身份用户的临时安全凭证发出的。
-
请求是否由其他 AWS 服务发出。
要在有可用的新日志文件时获得通知,请配置 CloudTrail 以发布 Amazon SNS 通知。有关更多信息,请参阅为 CloudTrail 配置 Amazon SNS 通知。
您还可以将多个 AWS 区域和多个 AWS 账户中的 X-Ray 日志文件聚合到单个 Amazon S3 存储桶中。有关更多信息,请参阅接收多个区域中的 CloudTrail 日志文件和从多个账户中接收 CloudTrail 日志文件。