本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
需要额外权限 [V2] 的日志记录
一些 AWS 服务使用新方法发送日志。这是一种灵活的方法,使您可以设置将日志从这些服务传输到以下一个或多个目的地: CloudWatch 日志、Amazon S3 或 Firehose,并 X-Ray 用于跟踪交付。
工作日志传输由三个元素组成:
-
DeliverySource,这是代表实际发送日志的资源的逻辑对象。 -
DeliveryDestination,这是代表实际传输目标的逻辑对象。 -
Delivery,这连接传输源与传输目标
要配置支持的 AWS 服务与目标之间的日志传输,必须执行以下操作:
-
使用创建交付源PutDeliverySource。
-
使用创建配送目的地PutDeliveryDestination。
-
如果您跨账户传输日志,则只能使用 Amazon S3 和 Firehose 目标。您必须 PutDeliveryDestinationPolicy在目标账户中使用才能向目标账户分配 IAM 策略。此策略授权创建从账户 A 中的传输源到账户 B 中的传输目标的传输。对于跨账户传输,您必须手动创建权限策略。有关设置示例,请参阅Cross-account 配送示例。
-
使用将一个交付源和一个交付目的地精确配对来创建交付 CreateDelivery。
日志传输设置示例
以下示例在同一个 AWS 账户中创建传送源和交付目的地。将源资源 ARN 和日志类型替换为生成日志的服务支持的值。这些示例不需要配送目的地政策。
创建交付来源
创建交付源,然后使用以下目标示例之一。
aws logs put-delivery-source \ --name my-delivery-source \ --resource-arnsource-resource-arn\ --log-typelog-type
向 L CloudWatch ogs 创建交付
为现有日志组创建传送目的地。
aws logs put-delivery-destination \ --name my-cwl-delivery-destination \ --delivery-destination-configuration \ "destinationResourceArn=arn:aws:logs:region:account-id:log-group:log-group-name"
创建配送。
aws logs create-delivery \ --delivery-source-name my-delivery-source \ --delivery-destination-arn arn:aws:logs:region:account-id:delivery-destination:my-cwl-delivery-destination
创建向 Amazon S3 的交付
为现有存储桶创建交付目的地。
aws logs put-delivery-destination \ --name my-s3-delivery-destination \ --delivery-destination-configuration \ "destinationResourceArn=arn:aws:s3:::bucket-name"
创建配送。
aws logs create-delivery \ --delivery-source-name my-delivery-source \ --delivery-destination-arn arn:aws:logs:region:account-id:delivery-destination:my-s3-delivery-destination
要配置目标前缀、后缀路径或路 Hive-compatible 径,请参阅亚马逊 S3 对象密钥格式。
创建向 Firehose 的配送
为现有交付流创建 DirectPut 交付目的地。
aws logs put-delivery-destination \ --name my-firehose-delivery-destination \ --delivery-destination-configuration \ "destinationResourceArn=arn:aws:firehose:region:account-id:deliverystream/delivery-stream-name"
创建配送。
aws logs create-delivery \ --delivery-source-name my-delivery-source \ --delivery-destination-arn arn:aws:logs:region:account-id:delivery-destination:my-firehose-delivery-destination
创建配送至 X-Ray
要传输跟踪,请使用支持传送到的源服务和日志类型 X-Ray。创建逻辑 X-Ray 传送目的地。
aws logs put-delivery-destination \ --name my-xray-delivery-destination \ --delivery-destination-type XRAY
创建配送。
aws logs create-delivery \ --delivery-source-name my-delivery-source \ --delivery-destination-arn arn:aws:logs:region:account-id:delivery-destination:my-xray-delivery-destination
要验证交付,请使用以下命令。
aws logs describe-deliveries \ --delivery-source-name-prefix my-delivery-source
以下各节详细介绍了在登录期间使用 V2 流程将日志传输到每种类型目标时需要具备的权限。这些权限可以授予您登录时使用的 IAM 角色。
重要
删除日志生成资源后,您有责任删除日志传输资源。为此,请按照以下步骤操作。
-
使用
Delivery该DeleteDelivery操作删除。 -
使用
DeliverySource该DeleteDeliverySource操作删除。 -
如果与您刚刚删除的
DeliveryDestinationDeliverySource关联仅用于此特定用途DeliverySource,则可以使用该DeleteDeliveryDestinations操作将其删除。