S3DeliveryDestinationProps
- class aws_cdk.mixins_preview.aws_logs.S3DeliveryDestinationProps(*, bucket, encryption_key=None, output_format=None, permissions_version=None, source_account_id=None)
Bases:
object(experimental) Properties for S3 delivery destination.
- Parameters:
bucket (
IBucketRef) – (experimental) The S3 bucket to deliver logs to.encryption_key (
Optional[IKeyRef]) – (experimental) KMS key to use for encrypting logs in the S3 bucket. When provided, grants the logs delivery service permissions to use the key. Default: - No encryption key is configuredoutput_format (
Optional[str]) – (experimental) Format of the logs that are sent to this delivery destination.permissions_version (
Optional[S3LogsDeliveryPermissionsVersion]) – (experimental) The permissions version (‘V1’ or ‘V2’) to be used for this delivery. Depending on the source of the logs, different permissions are required. Default: “V2”source_account_id (
Optional[str]) – (experimental) Optional acount id for account the delivery source is in for cross account Vended Logs.
- Stability:
experimental
- ExampleMetadata:
infused
Example:
from aws_cdk import Environment, Environment import aws_cdk.mixins_preview.aws_logs as log_destinations import aws_cdk.mixins_preview.aws_cloudfront.mixins as cloudfront_mixins # Create CloudFront distribution # origin: s3.IBucket destination_account = "123456789012" source_account = "234567890123" region = "us-east-1" app = App() dest_stack = Stack(app, "destination-stack", env=Environment( account=destination_account, region=region ) ) # Create destination bucket dest_bucket = s3.Bucket(dest_stack, "DeliveryBucket") log_destinations.S3DeliveryDestination(dest_stack, "Destination", bucket=dest_bucket, source_account_id=source_account ) source_stack = Stack(app, "source-stack", env=Environment( account=source_account, region=region ) ) distribution = cloudfront.Distribution(source_stack, "Distribution", default_behavior=cloudfront.BehaviorOptions( origin=origins.S3BucketOrigin.with_origin_access_control(origin) ) ) destination = logs.CfnDeliveryDestination.from_delivery_destination_arn(source_stack, "Destination", "arn of Delivery Destination in destinationAccount") distribution.with(cloudfront_mixins.CfnDistributionLogsMixin.CONNECTION_LOGS.to_destination(destination))
Attributes
- bucket
(experimental) The S3 bucket to deliver logs to.
- Stability:
experimental
- encryption_key
(experimental) KMS key to use for encrypting logs in the S3 bucket.
When provided, grants the logs delivery service permissions to use the key.
- Default:
No encryption key is configured
- Stability:
experimental
- output_format
(experimental) Format of the logs that are sent to this delivery destination.
- Stability:
experimental
- permissions_version
(experimental) The permissions version (‘V1’ or ‘V2’) to be used for this delivery.
Depending on the source of the logs, different permissions are required.
- Default:
“V2”
- Stability:
experimental
- source_account_id
(experimental) Optional acount id for account the delivery source is in for cross account Vended Logs.
- Stability:
experimental