DeliveryStreamProps

class aws_cdk.aws_kinesisfirehose.DeliveryStreamProps(*, destination, delivery_stream_name=None, encryption=None, role=None, source=None)

Bases: object

Properties for a new delivery stream.

Parameters:
  • destination (IDestination) – The destination that this delivery stream will deliver data to.

  • delivery_stream_name (Optional[str]) – A name for the delivery stream. Default: - a name is generated by CloudFormation.

  • encryption (Optional[StreamEncryption]) – Indicates the type of customer master key (CMK) to use for server-side encryption, if any. Default: StreamEncryption.unencrypted()

  • role (Optional[IRole]) – The IAM role associated with this delivery stream. Assumed by Amazon Data Firehose to read from sources and encrypt data server-side. Default: - a role will be created with default permissions.

  • source (Optional[ISource]) – 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.

ExampleMetadata:

infused

Example:

import aws_cdk.aws_kinesisfirehose as firehose


bucket = s3.Bucket(self, "MyBucket")
stream = firehose.DeliveryStream(self, "MyStream",
    destination=firehose.S3Bucket(bucket)
)

topic_rule = iot.TopicRule(self, "TopicRule",
    sql=iot.IotSql.from_string_as_ver20160323("SELECT * FROM 'device/+/data'"),
    actions=[
        actions.FirehosePutRecordAction(stream,
            batch_mode=True,
            record_separator=actions.FirehoseRecordSeparator.NEWLINE
        )
    ]
)

Attributes

delivery_stream_name

A name for the delivery stream.

Default:
  • a name is generated by CloudFormation.

destination

The destination that this delivery stream will deliver data to.

encryption

Indicates the type of customer master key (CMK) to use for server-side encryption, if any.

Default:

StreamEncryption.unencrypted()

role

The IAM role associated with this delivery stream.

Assumed by Amazon Data Firehose to read from sources and encrypt data server-side.

Default:
  • a role will be created with default permissions.

source

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.