DeliveryStreamProps
- class aws_cdk.aws_kinesisfirehose.DeliveryStreamProps(*, destinations, delivery_stream_name=None, encryption=None, encryption_key=None, role=None, source_stream=None)
Bases:
object
(experimental) Properties for a new delivery stream.
- Parameters:
destinations (
Sequence
[IDestination
]) – (experimental) The destinations that this delivery stream will deliver data to. Only a singleton array is supported at this time.delivery_stream_name (
Optional
[str
]) – (experimental) A name for the delivery stream. Default: - a name is generated by CloudFormation.encryption (
Optional
[StreamEncryption
]) – (experimental) Indicates the type of customer master key (CMK) to use for server-side encryption, if any. Default: StreamEncryption.UNENCRYPTED - unlessencryptionKey
is provided, in which case this will be implicitly set toStreamEncryption.CUSTOMER_MANAGED
encryption_key (
Optional
[IKey
]) – (experimental) Customer managed key to server-side encrypt data in the stream. Default: - no KMS key will be used; ifencryption
is set toCUSTOMER_MANAGED
, a KMS key will be created for yourole (
Optional
[IRole
]) – (experimental) The IAM role associated with this delivery stream. Assumed by Kinesis Data Firehose to read from sources and encrypt data server-side. Default: - a role will be created with default permissions.source_stream (
Optional
[IStream
]) – (experimental) The Kinesis data stream to use as a source for this delivery stream. Default: - data must be written to the delivery stream via a direct put.
- Stability:
experimental
- ExampleMetadata:
infused
Example:
# bucket: s3.Bucket # Provide a Lambda function that will transform records before delivery, with custom # buffering and retry configuration lambda_function = lambda_.Function(self, "Processor", runtime=lambda_.Runtime.NODEJS_14_X, handler="index.handler", code=lambda_.Code.from_asset(path.join(__dirname, "process-records")) ) lambda_processor = firehose.LambdaFunctionProcessor(lambda_function, buffer_interval=Duration.minutes(5), buffer_size=Size.mebibytes(5), retries=5 ) s3_destination = destinations.S3Bucket(bucket, processor=lambda_processor ) firehose.DeliveryStream(self, "Delivery Stream", destinations=[s3_destination] )
Attributes
- delivery_stream_name
(experimental) A name for the delivery stream.
- Default:
a name is generated by CloudFormation.
- Stability:
experimental
- destinations
(experimental) The destinations that this delivery stream will deliver data to.
Only a singleton array is supported at this time.
- Stability:
experimental
- encryption
(experimental) Indicates the type of customer master key (CMK) to use for server-side encryption, if any.
- Default:
StreamEncryption.UNENCRYPTED - unless
encryptionKey
is provided, in which case this will be implicitly set toStreamEncryption.CUSTOMER_MANAGED
- Stability:
experimental
- encryption_key
(experimental) Customer managed key to server-side encrypt data in the stream.
- Default:
no KMS key will be used; if
encryption
is set toCUSTOMER_MANAGED
, a KMS key will be created for you
- Stability:
experimental
- role
(experimental) The IAM role associated with this delivery stream.
Assumed by Kinesis Data Firehose to read from sources and encrypt data server-side.
- Default:
a role will be created with default permissions.
- Stability:
experimental
- source_stream
(experimental) The Kinesis data stream to use as a source for this delivery stream.
- Default:
data must be written to the delivery stream via a direct put.
- Stability:
experimental