Skip to content
v2.275.0

CfnChannelProps Struct ​

Properties for defining a CfnChannel.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_kinesis as kinesis } from 'aws-cdk-lib';
const cfnChannelProps: kinesis.CfnChannelProps = {
  channelName: 'channelName',
  serviceExecutionRoleArn: 'serviceExecutionRoleArn',
  streamConfigurationList: [{
    recordConfiguration: {
      recordFormatType: 'recordFormatType',

      // the properties below are optional
      gsrSchemaArn: 'gsrSchemaArn',
    },
    streamArn: 'streamArn',
  }],

  // the properties below are optional
  encryptionConfiguration: {
    encryptionType: 'encryptionType',
    keyId: 'keyId',
  },
  loggingConfiguration: {
    cloudWatchLogs: {
      enabled: false,

      // the properties below are optional
      logGroupName: 'logGroupName',
      logStreamName: 'logStreamName',
    },
  },
  s3DestinationConfiguration: {
    storageConfiguration: {
      bucketArn: 'bucketArn',
      compressionType: 'compressionType',
      expectedBucketOwner: 'expectedBucketOwner',

      // the properties below are optional
      outputKeyTemplate: 'outputKeyTemplate',
      storageClass: 'storageClass',
    },

    // the properties below are optional
    dataFreshnessInSeconds: 123,
    deadLetterQueueS3Configuration: {
      bucketArn: 'bucketArn',
      expectedBucketOwner: 'expectedBucketOwner',

      // the properties below are optional
      errorOutputPrefix: 'errorOutputPrefix',
    },
  },
  s3TablesDestinationConfiguration: {
    deadLetterQueueS3Configuration: {
      bucketArn: 'bucketArn',
      expectedBucketOwner: 'expectedBucketOwner',

      // the properties below are optional
      errorOutputPrefix: 'errorOutputPrefix',
    },
    s3TablesConfigurationList: [{
      compressionType: 'compressionType',
      namespace: 'namespace',
      tableBucketArn: 'tableBucketArn',
      tableName: 'tableName',

      // the properties below are optional
      partitionSpec: {
        partitionFields: [{
          sourceName: 'sourceName',
          transform: 'transform',
        }],
      },
    }],

    // the properties below are optional
    dataFreshnessInSeconds: 123,
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
};

Properties ​

channelNamestringchannel_namestrchannelNameStringChannelNamestringChannelName*stringrequired#
The name of the channel.

The name's uniqueness is scoped per AWS account and region.

encryptionConfigurationoptionalIResolvable | CfnChannel.EncryptionConfigurationPropertyencryption_configurationoptionaltyping.Union[IResolvable, EncryptionConfigurationProperty]encryptionConfigurationoptionalIResolvableEncryptionConfigurationoptionalIResolvableEncryptionConfigurationoptionalinterface{}#
Server-side encryption configuration for data at rest in the destination.

Data delivered to S3 / S3 Tables is encrypted with the same key.

loggingConfigurationoptionalIResolvable | CfnChannel.LoggingConfigurationPropertylogging_configurationoptionaltyping.Union[IResolvable, LoggingConfigurationProperty]loggingConfigurationoptionalIResolvableLoggingConfigurationoptionalIResolvableLoggingConfigurationoptionalinterface{}#
Configuration for delivering channel operational logs.
s3DestinationConfigurationoptionalIResolvable | CfnChannel.S3DestinationConfigurationPropertys3_destination_configurationoptionaltyping.Union[IResolvable, S3DestinationConfigurationProperty]s3DestinationConfigurationoptionalIResolvableS3DestinationConfigurationoptionalIResolvableS3DestinationConfigurationoptionalinterface{}#
Configuration for delivery to a vanilla S3 bucket destination.

Exactly one of S3DestinationConfiguration and S3TablesDestinationConfiguration must be specified on the channel.

s3TablesDestinationConfigurationoptionalIResolvable | CfnChannel.S3TablesDestinationConfigurationPropertys3_tables_destination_configurationoptionaltyping.Union[IResolvable, S3TablesDestinationConfigurationProperty]s3TablesDestinationConfigurationoptionalIResolvableS3TablesDestinationConfigurationoptionalIResolvableS3TablesDestinationConfigurationoptionalinterface{}#
Configuration for delivery to S3 Tables destinations.

Exactly one of S3DestinationConfiguration and S3TablesDestinationConfiguration must be specified on the channel.

serviceExecutionRoleArnstringservice_execution_role_arnstrserviceExecutionRoleArnStringServiceExecutionRoleArnstringServiceExecutionRoleArn*stringrequired#
The ARN of the IAM role that the channel assumes to read from the source stream, deliver records to the destination, and (when enabled) write CloudWatch Logs.
streamConfigurationListIResolvable | IResolvable | CfnChannel.StreamConfigurationProperty[]stream_configuration_listtyping.Union[IResolvable, typing.List[typing.Union[IResolvable, StreamConfigurationProperty]]]streamConfigurationListIResolvableStreamConfigurationListIResolvableStreamConfigurationListinterface{}required#
List of stream configurations associated with the channel.

v1 supports a single element; the list shape allows future extensibility to fan in from multiple streams.

tagsoptionalCfnTag[]tagsoptionaltyping.List[CfnTag]tagsoptionalList<CfnTag>TagsoptionalCfnTag[]Tagsoptional*[]CfnTag#
An arbitrary set of tags (key-value pairs) to associate with the Kinesis channel.