CfnChannelPropsMixin
- class aws_cdk.cfn_property_mixins.aws_kinesis.CfnChannelPropsMixin(props, *, strategy=None)
Bases:
MixinResource Type definition for AWS::Kinesis::Channel.
- See:
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-channel.html
- CloudformationResource:
AWS::Kinesis::Channel
- Mixin:
true
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis import aws_cdk as cdk # merge_strategy: cdk.IMergeStrategy cfn_channel_props_mixin = kinesis.CfnChannelPropsMixin(kinesis.CfnChannelMixinProps( channel_name="channelName", encryption_configuration=kinesis.CfnChannelPropsMixin.EncryptionConfigurationProperty( encryption_type="encryptionType", key_id="keyId" ), logging_configuration=kinesis.CfnChannelPropsMixin.LoggingConfigurationProperty( cloud_watch_logs=kinesis.CfnChannelPropsMixin.CloudWatchLogsConfigurationProperty( enabled=False, log_group_name="logGroupName", log_stream_name="logStreamName" ) ), s3_destination_configuration=kinesis.CfnChannelPropsMixin.S3DestinationConfigurationProperty( data_freshness_in_seconds=123, dead_letter_queue_s3_configuration=kinesis.CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty( bucket_arn="bucketArn", error_output_prefix="errorOutputPrefix", expected_bucket_owner="expectedBucketOwner" ), storage_configuration=kinesis.CfnChannelPropsMixin.S3StorageConfigurationProperty( bucket_arn="bucketArn", compression_type="compressionType", expected_bucket_owner="expectedBucketOwner", output_key_template="outputKeyTemplate", storage_class="storageClass" ) ), s3_tables_destination_configuration=kinesis.CfnChannelPropsMixin.S3TablesDestinationConfigurationProperty( data_freshness_in_seconds=123, dead_letter_queue_s3_configuration=kinesis.CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty( bucket_arn="bucketArn", error_output_prefix="errorOutputPrefix", expected_bucket_owner="expectedBucketOwner" ), s3_tables_configuration_list=[kinesis.CfnChannelPropsMixin.S3TableConfigurationProperty( compression_type="compressionType", namespace="namespace", partition_spec=kinesis.CfnChannelPropsMixin.PartitionSpecProperty( partition_fields=[kinesis.CfnChannelPropsMixin.PartitionFieldProperty( source_name="sourceName", transform="transform" )] ), table_bucket_arn="tableBucketArn", table_name="tableName" )] ), service_execution_role_arn="serviceExecutionRoleArn", stream_configuration_list=[kinesis.CfnChannelPropsMixin.StreamConfigurationProperty( record_configuration=kinesis.CfnChannelPropsMixin.RecordConfigurationProperty( gsr_schema_arn="gsrSchemaArn", record_format_type="recordFormatType" ), stream_arn="streamArn" )], tags=[cdk.CfnTag( key="key", value="value" )] ), strategy=merge_strategy )
Create a mixin to apply properties to
AWS::Kinesis::Channel.- Parameters:
props (
Union[CfnChannelMixinProps,Dict[str,Any]]) – L1 properties to apply.strategy (
Optional[IMergeStrategy]) – Strategy for merging nested properties. Default: - PropertyMergeStrategy.combine()
Methods
- apply_to(construct)
Apply the mixin properties to the construct.
- Parameters:
construct (
IConstruct)- Return type:
None
- supports(construct)
Check if this mixin supports the given construct.
- Parameters:
construct (
IConstruct)- Return type:
bool
Attributes
- CFN_PROPERTY_KEYS = ['channelName', 'encryptionConfiguration', 'loggingConfiguration', 's3DestinationConfiguration', 's3TablesDestinationConfiguration', 'serviceExecutionRoleArn', 'streamConfigurationList', 'tags']
Static Methods
- classmethod is_mixin(x)
Checks if
xis a Mixin.- Parameters:
x (
Any) – Any object.- Return type:
bool- Returns:
true if
xis an object created from a class which extendsMixin.
CloudWatchLogsConfigurationProperty
- class CfnChannelPropsMixin.CloudWatchLogsConfigurationProperty(*, enabled=None, log_group_name=None, log_stream_name=None)
Bases:
objectCloudWatch Logs configuration for the channel.
When Enabled is true and LogGroupName is omitted, the service uses a default group derived from the channel name and id; LogStreamName defaults to the literal string ‘DestinationDelivery’.
- Parameters:
enabled (
Union[bool,IResolvable,None]) – Whether CloudWatch Logs delivery is enabled.log_group_name (
Optional[str]) – The CloudWatch log group name. When Enabled is true and LogGroupName is omitted, the service uses the default ‘/aws/kinesis//’.log_stream_name (
Optional[str]) – The CloudWatch log stream name. Defaults to the literal string ‘DestinationDelivery’ when omitted. Default: - “DestinationDelivery”
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis cloud_watch_logs_configuration_property = kinesis.CfnChannelPropsMixin.CloudWatchLogsConfigurationProperty( enabled=False, log_group_name="logGroupName", log_stream_name="logStreamName" )
Attributes
- enabled
Whether CloudWatch Logs delivery is enabled.
- log_group_name
The CloudWatch log group name.
When Enabled is true and LogGroupName is omitted, the service uses the default ‘/aws/kinesis//’.
- log_stream_name
The CloudWatch log stream name.
Defaults to the literal string ‘DestinationDelivery’ when omitted.
DeadLetterQueueS3ConfigurationProperty
- class CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty(*, bucket_arn=None, error_output_prefix=None, expected_bucket_owner=None)
Bases:
objectConfiguration of the S3 bucket used to capture records that cannot be delivered to the primary destination.
- Parameters:
bucket_arn (
Optional[str]) – The ARN of the S3 bucket for storing failed records.error_output_prefix (
Optional[str]) – Optional S3 key prefix under which error records are organized. When omitted, the service uses the default ‘kinesis-channel/errors///’.expected_bucket_owner (
Optional[str]) – The AWS account ID of the expected owner of the dead-letter queue S3 bucket. Used to verify bucket ownership before delivery.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis dead_letter_queue_s3_configuration_property = kinesis.CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty( bucket_arn="bucketArn", error_output_prefix="errorOutputPrefix", expected_bucket_owner="expectedBucketOwner" )
Attributes
- bucket_arn
The ARN of the S3 bucket for storing failed records.
- error_output_prefix
Optional S3 key prefix under which error records are organized.
When omitted, the service uses the default ‘kinesis-channel/errors///’.
- expected_bucket_owner
The AWS account ID of the expected owner of the dead-letter queue S3 bucket.
Used to verify bucket ownership before delivery.
EncryptionConfigurationProperty
- class CfnChannelPropsMixin.EncryptionConfigurationProperty(*, encryption_type=None, key_id=None)
Bases:
objectServer-side encryption configuration for data at rest in the destination.
Data delivered to S3 / S3 Tables is encrypted with the same key.
- Parameters:
encryption_type (
Optional[str]) – The encryption type. KMS is the only supported value.key_id (
Optional[str]) – The customer-managed AWS KMS key. Accepts a key GUID, key ARN, alias ARN, or alias name prefixed by ‘alias/’. The Kinesis Data Streams managed alias ‘aws/kinesis’ is not accepted - the key must be customer-owned so it can also be used by readers of the destination.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis encryption_configuration_property = kinesis.CfnChannelPropsMixin.EncryptionConfigurationProperty( encryption_type="encryptionType", key_id="keyId" )
Attributes
- encryption_type
The encryption type.
KMS is the only supported value.
- key_id
The customer-managed AWS KMS key.
Accepts a key GUID, key ARN, alias ARN, or alias name prefixed by ‘alias/’. The Kinesis Data Streams managed alias ‘aws/kinesis’ is not accepted - the key must be customer-owned so it can also be used by readers of the destination.
LoggingConfigurationProperty
- class CfnChannelPropsMixin.LoggingConfigurationProperty(*, cloud_watch_logs=None)
Bases:
objectConfiguration for delivering channel operational logs.
- Parameters:
cloud_watch_logs (
Union[IResolvable,CloudWatchLogsConfigurationProperty,Dict[str,Any],None]) – CloudWatch Logs configuration for the channel. When Enabled is true and LogGroupName is omitted, the service uses a default group derived from the channel name and id; LogStreamName defaults to the literal string ‘DestinationDelivery’.- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis logging_configuration_property = kinesis.CfnChannelPropsMixin.LoggingConfigurationProperty( cloud_watch_logs=kinesis.CfnChannelPropsMixin.CloudWatchLogsConfigurationProperty( enabled=False, log_group_name="logGroupName", log_stream_name="logStreamName" ) )
Attributes
- cloud_watch_logs
CloudWatch Logs configuration for the channel.
When Enabled is true and LogGroupName is omitted, the service uses a default group derived from the channel name and id; LogStreamName defaults to the literal string ‘DestinationDelivery’.
PartitionFieldProperty
- class CfnChannelPropsMixin.PartitionFieldProperty(*, source_name=None, transform=None)
Bases:
objectA single partition field consisting of a transform applied to a source column.
- Parameters:
source_name (
Optional[str]) – The name of the source column on which the transform is applied.transform (
Optional[str]) – The partitioning transform applied to the SourceName column.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis partition_field_property = kinesis.CfnChannelPropsMixin.PartitionFieldProperty( source_name="sourceName", transform="transform" )
Attributes
- source_name
The name of the source column on which the transform is applied.
- transform
The partitioning transform applied to the SourceName column.
PartitionSpecProperty
- class CfnChannelPropsMixin.PartitionSpecProperty(*, partition_fields=None)
Bases:
objectPartitioning specification for the destination Iceberg table.
Follows the S3 Tables / Iceberg PartitionSpec format.
- Parameters:
partition_fields (
Union[IResolvable,Sequence[Union[IResolvable,PartitionFieldProperty,Dict[str,Any]]],None]) – List of partition fields that define how records are partitioned when written to the destination table.- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis partition_spec_property = kinesis.CfnChannelPropsMixin.PartitionSpecProperty( partition_fields=[kinesis.CfnChannelPropsMixin.PartitionFieldProperty( source_name="sourceName", transform="transform" )] )
Attributes
- partition_fields
List of partition fields that define how records are partitioned when written to the destination table.
RecordConfigurationProperty
- class CfnChannelPropsMixin.RecordConfigurationProperty(*, gsr_schema_arn=None, record_format_type=None)
Bases:
objectThe configuration that describes how records on the source stream are encoded.
- Parameters:
gsr_schema_arn (
Optional[str]) – The ARN of the AWS Glue Schema Registry (GSR) schema. Required for the S3 Tables destination, where it is used to create the S3 Table and to validate that the record format matches the table schema. Also used when RecordFormatType is GSR_JSON to interpret records read from the source stream. Vanilla S3 delivery writes records as S3 objects and does not need a schema. The schema must be in the same account and region as the channel.record_format_type (
Optional[str]) – The format used to interpret records read from the source stream.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis record_configuration_property = kinesis.CfnChannelPropsMixin.RecordConfigurationProperty( gsr_schema_arn="gsrSchemaArn", record_format_type="recordFormatType" )
Attributes
- gsr_schema_arn
The ARN of the AWS Glue Schema Registry (GSR) schema.
Required for the S3 Tables destination, where it is used to create the S3 Table and to validate that the record format matches the table schema. Also used when RecordFormatType is GSR_JSON to interpret records read from the source stream. Vanilla S3 delivery writes records as S3 objects and does not need a schema. The schema must be in the same account and region as the channel.
- record_format_type
The format used to interpret records read from the source stream.
S3DestinationConfigurationProperty
- class CfnChannelPropsMixin.S3DestinationConfigurationProperty(*, data_freshness_in_seconds=None, dead_letter_queue_s3_configuration=None, storage_configuration=None)
Bases:
objectConfiguration for delivery to a vanilla S3 bucket destination.
Exactly one of S3DestinationConfiguration and S3TablesDestinationConfiguration must be specified on the channel.
- Parameters:
data_freshness_in_seconds (
Union[int,float,None]) – The maximum time in seconds the channel buffers records before delivery if the minimum target file size is not reached. Default: - 300dead_letter_queue_s3_configuration (
Union[IResolvable,DeadLetterQueueS3ConfigurationProperty,Dict[str,Any],None]) – Configuration of the S3 bucket used to capture records that cannot be delivered to the primary destination.storage_configuration (
Union[IResolvable,S3StorageConfigurationProperty,Dict[str,Any],None]) – S3 storage configuration that describes the destination bucket and how delivered objects are stored.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis s3_destination_configuration_property = kinesis.CfnChannelPropsMixin.S3DestinationConfigurationProperty( data_freshness_in_seconds=123, dead_letter_queue_s3_configuration=kinesis.CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty( bucket_arn="bucketArn", error_output_prefix="errorOutputPrefix", expected_bucket_owner="expectedBucketOwner" ), storage_configuration=kinesis.CfnChannelPropsMixin.S3StorageConfigurationProperty( bucket_arn="bucketArn", compression_type="compressionType", expected_bucket_owner="expectedBucketOwner", output_key_template="outputKeyTemplate", storage_class="storageClass" ) )
Attributes
- data_freshness_in_seconds
The maximum time in seconds the channel buffers records before delivery if the minimum target file size is not reached.
- dead_letter_queue_s3_configuration
Configuration of the S3 bucket used to capture records that cannot be delivered to the primary destination.
- storage_configuration
S3 storage configuration that describes the destination bucket and how delivered objects are stored.
S3StorageConfigurationProperty
- class CfnChannelPropsMixin.S3StorageConfigurationProperty(*, bucket_arn=None, compression_type=None, expected_bucket_owner=None, output_key_template=None, storage_class=None)
Bases:
objectS3 storage configuration that describes the destination bucket and how delivered objects are stored.
- Parameters:
bucket_arn (
Optional[str]) – The ARN of the S3 bucket for record delivery. Different channels can deliver to the same bucket. Buckets can be cross-account but must be in the same region as the channel.compression_type (
Optional[str]) – The compression algorithm applied to delivered objects.expected_bucket_owner (
Optional[str]) – The AWS account ID of the expected owner of the destination S3 bucket. Used to verify bucket ownership before delivery.output_key_template (
Optional[str]) – Optional template for the S3 object key path. Supports placeholders in the form !{name}: !{channel-name}, !{channel-id}, !{stream-name}, !{yyyy}, !{yy}, !{MM}, !{dd}, !{HH}, !{mm}, and !{extension} (a literal file extension can be supplied as !{extension:.json.gz}). When omitted, the service uses the default ‘kinesis-channel/!{channel-name}/!{channel-id}/!{yyyy}/!{MM}/!{dd}/!{HH}/!{channel-name}-!{channel-id}-!{yyyy}-!{MM}-!{dd}-!{HH}-!{mm}!{extension}’.storage_class (
Optional[str]) – The S3 storage class for delivered objects. Default: - “STANDARD”
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis s3_storage_configuration_property = kinesis.CfnChannelPropsMixin.S3StorageConfigurationProperty( bucket_arn="bucketArn", compression_type="compressionType", expected_bucket_owner="expectedBucketOwner", output_key_template="outputKeyTemplate", storage_class="storageClass" )
Attributes
- bucket_arn
The ARN of the S3 bucket for record delivery.
Different channels can deliver to the same bucket. Buckets can be cross-account but must be in the same region as the channel.
- compression_type
The compression algorithm applied to delivered objects.
- expected_bucket_owner
The AWS account ID of the expected owner of the destination S3 bucket.
Used to verify bucket ownership before delivery.
- output_key_template
Optional template for the S3 object key path.
Supports placeholders in the form !{name}: !{channel-name}, !{channel-id}, !{stream-name}, !{yyyy}, !{yy}, !{MM}, !{dd}, !{HH}, !{mm}, and !{extension} (a literal file extension can be supplied as !{extension:.json.gz}). When omitted, the service uses the default ‘kinesis-channel/!{channel-name}/!{channel-id}/!{yyyy}/!{MM}/!{dd}/!{HH}/!{channel-name}-!{channel-id}-!{yyyy}-!{MM}-!{dd}-!{HH}-!{mm}!{extension}’.
- storage_class
The S3 storage class for delivered objects.
S3TableConfigurationProperty
- class CfnChannelPropsMixin.S3TableConfigurationProperty(*, compression_type=None, namespace=None, partition_spec=None, table_bucket_arn=None, table_name=None)
Bases:
objectAn S3 Tables destination including its table bucket, namespace, table name, and partition spec.
- Parameters:
compression_type (
Optional[str]) – The compression algorithm applied to objects delivered to the S3 Tables destination.namespace (
Optional[str]) – The name of the S3 Tables namespace that contains the destination table.partition_spec (
Union[IResolvable,PartitionSpecProperty,Dict[str,Any],None]) – Partitioning specification for the destination Iceberg table. Follows the S3 Tables / Iceberg PartitionSpec format.table_bucket_arn (
Optional[str]) – The ARN of the S3 Tables table bucket for record delivery. Buckets can be cross-account but must be in the same region as the channel.table_name (
Optional[str]) – The name of the destination S3 Tables table. The table is created for the customer if it does not yet exist.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis s3_table_configuration_property = kinesis.CfnChannelPropsMixin.S3TableConfigurationProperty( compression_type="compressionType", namespace="namespace", partition_spec=kinesis.CfnChannelPropsMixin.PartitionSpecProperty( partition_fields=[kinesis.CfnChannelPropsMixin.PartitionFieldProperty( source_name="sourceName", transform="transform" )] ), table_bucket_arn="tableBucketArn", table_name="tableName" )
Attributes
- compression_type
The compression algorithm applied to objects delivered to the S3 Tables destination.
- namespace
The name of the S3 Tables namespace that contains the destination table.
- partition_spec
Partitioning specification for the destination Iceberg table.
Follows the S3 Tables / Iceberg PartitionSpec format.
- table_bucket_arn
The ARN of the S3 Tables table bucket for record delivery.
Buckets can be cross-account but must be in the same region as the channel.
- table_name
The name of the destination S3 Tables table.
The table is created for the customer if it does not yet exist.
S3TablesDestinationConfigurationProperty
- class CfnChannelPropsMixin.S3TablesDestinationConfigurationProperty(*, data_freshness_in_seconds=None, dead_letter_queue_s3_configuration=None, s3_tables_configuration_list=None)
Bases:
objectConfiguration for delivery to S3 Tables destinations.
Exactly one of S3DestinationConfiguration and S3TablesDestinationConfiguration must be specified on the channel.
- Parameters:
data_freshness_in_seconds (
Union[int,float,None]) – The maximum time in seconds the channel buffers records before delivery if the minimum target file size is not reached. Default: - 300dead_letter_queue_s3_configuration (
Union[IResolvable,DeadLetterQueueS3ConfigurationProperty,Dict[str,Any],None]) – Configuration of the S3 bucket used to capture records that cannot be delivered to the primary destination.s3_tables_configuration_list (
Union[IResolvable,Sequence[Union[IResolvable,S3TableConfigurationProperty,Dict[str,Any]]],None]) – The list of S3 Tables destinations. v1 supports a single element; the list shape allows future extensibility to fan out to multiple tables.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis s3_tables_destination_configuration_property = kinesis.CfnChannelPropsMixin.S3TablesDestinationConfigurationProperty( data_freshness_in_seconds=123, dead_letter_queue_s3_configuration=kinesis.CfnChannelPropsMixin.DeadLetterQueueS3ConfigurationProperty( bucket_arn="bucketArn", error_output_prefix="errorOutputPrefix", expected_bucket_owner="expectedBucketOwner" ), s3_tables_configuration_list=[kinesis.CfnChannelPropsMixin.S3TableConfigurationProperty( compression_type="compressionType", namespace="namespace", partition_spec=kinesis.CfnChannelPropsMixin.PartitionSpecProperty( partition_fields=[kinesis.CfnChannelPropsMixin.PartitionFieldProperty( source_name="sourceName", transform="transform" )] ), table_bucket_arn="tableBucketArn", table_name="tableName" )] )
Attributes
- data_freshness_in_seconds
The maximum time in seconds the channel buffers records before delivery if the minimum target file size is not reached.
- dead_letter_queue_s3_configuration
Configuration of the S3 bucket used to capture records that cannot be delivered to the primary destination.
- s3_tables_configuration_list
The list of S3 Tables destinations.
v1 supports a single element; the list shape allows future extensibility to fan out to multiple tables.
StreamConfigurationProperty
- class CfnChannelPropsMixin.StreamConfigurationProperty(*, record_configuration=None, stream_arn=None)
Bases:
objectThe configuration of a Kinesis stream that the channel reads from.
- Parameters:
record_configuration (
Union[IResolvable,RecordConfigurationProperty,Dict[str,Any],None]) – The configuration that describes how records on the source stream are encoded.stream_arn (
Optional[str]) – The Amazon resource name (ARN) of the Kinesis data stream that the channel reads from.
- See:
- ExampleMetadata:
fixture=_generated
Example:
# The code below shows an example of how to instantiate this type. # The values are placeholders you should change. from aws_cdk.cfn_property_mixins import aws_kinesis as kinesis stream_configuration_property = kinesis.CfnChannelPropsMixin.StreamConfigurationProperty( record_configuration=kinesis.CfnChannelPropsMixin.RecordConfigurationProperty( gsr_schema_arn="gsrSchemaArn", record_format_type="recordFormatType" ), stream_arn="streamArn" )
Attributes
- record_configuration
The configuration that describes how records on the source stream are encoded.
- stream_arn
The Amazon resource name (ARN) of the Kinesis data stream that the channel reads from.