@aws-cdk_aws-kinesisfirehose-destinations-alpha.S3BucketProps

interface S3BucketProps ๐Ÿ”น

LanguageType name
.NETAmazon.CDK.AWS.KinesisFirehose.Destinations.Alpha.S3BucketProps
Gogithub.com/aws/aws-cdk-go/awscdkkinesisfirehosedestinationsalpha/v2#S3BucketProps
Javasoftware.amazon.awscdk.services.kinesisfirehose.destinations.alpha.S3BucketProps
Pythonaws_cdk.aws_kinesisfirehose_destinations_alpha.S3BucketProps
TypeScript (source)@aws-cdk/aws-kinesisfirehose-destinations-alpha ยป S3BucketProps

Props for defining an S3 destination of a Kinesis Data Firehose delivery stream.

Example

// Provide a Lambda function that will transform records before delivery, with custom
// buffering and retry configuration
const lambdaFunction = new lambda.Function(this, 'Processor', {
  runtime: lambda.Runtime.NODEJS_14_X,
  handler: 'index.handler',
  code: lambda.Code.fromAsset(path.join(__dirname, 'process-records')),
});
const lambdaProcessor = new firehose.LambdaFunctionProcessor(lambdaFunction, {
  bufferInterval: Duration.minutes(5),
  bufferSize: Size.mebibytes(5),
  retries: 5,
});
declare const bucket: s3.Bucket;
const s3Destination = new destinations.S3Bucket(bucket, {
  processor: lambdaProcessor,
});
new firehose.DeliveryStream(this, 'Delivery Stream', {
  destinations: [s3Destination],
});

Properties

NameTypeDescription
bufferingInterval?๐Ÿ”นDurationThe length of time that Firehose buffers incoming data before delivering it to the S3 bucket.
bufferingSize?๐Ÿ”นSizeThe size of the buffer that Kinesis Data Firehose uses for incoming data before delivering it to the S3 bucket.
compression?๐Ÿ”นCompressionThe type of compression that Kinesis Data Firehose uses to compress the data that it delivers to the Amazon S3 bucket.
dataOutputPrefix?๐Ÿ”นstringA prefix that Kinesis Data Firehose evaluates and adds to records before writing them to S3.
encryptionKey?๐Ÿ”นIKeyThe AWS KMS key used to encrypt the data that it delivers to your Amazon S3 bucket.
errorOutputPrefix?๐Ÿ”นstringA prefix that Kinesis Data Firehose evaluates and adds to failed records before writing them to S3.
logGroup?๐Ÿ”นILogGroupThe CloudWatch log group where log streams will be created to hold error logs.
logging?๐Ÿ”นbooleanIf true, log errors when data transformation or data delivery fails.
processor?๐Ÿ”นIDataProcessorThe data transformation that should be performed on the data before writing to the destination.
role?๐Ÿ”นIRoleThe IAM role associated with this destination.
s3Backup?๐Ÿ”นDestinationS3BackupPropsThe configuration for backing up source records to S3.

bufferingInterval?๐Ÿ”น

Type: Duration (optional, default: Duration.seconds(300))

The length of time that Firehose buffers incoming data before delivering it to the S3 bucket.

Minimum: Duration.seconds(60) Maximum: Duration.seconds(900)


bufferingSize?๐Ÿ”น

Type: Size (optional, default: Size.mebibytes(5))

The size of the buffer that Kinesis Data Firehose uses for incoming data before delivering it to the S3 bucket.

Minimum: Size.mebibytes(1) Maximum: Size.mebibytes(128)


compression?๐Ÿ”น

Type: Compression (optional, default: UNCOMPRESSED)

The type of compression that Kinesis Data Firehose uses to compress the data that it delivers to the Amazon S3 bucket.

The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift destinations because they are not supported by the Amazon Redshift COPY operation that reads from the S3 bucket.


dataOutputPrefix?๐Ÿ”น

Type: string (optional, default: "YYYY/MM/DD/HH")

A prefix that Kinesis Data Firehose evaluates and adds to records before writing them to S3.

This prefix appears immediately following the bucket name.

See also: https://docs.aws.amazon.com/firehose/latest/dev/s3-prefixes.html


encryptionKey?๐Ÿ”น

Type: IKey (optional, default: Data is not encrypted.)

The AWS KMS key used to encrypt the data that it delivers to your Amazon S3 bucket.


errorOutputPrefix?๐Ÿ”น

Type: string (optional, default: "YYYY/MM/DD/HH")

A prefix that Kinesis Data Firehose evaluates and adds to failed records before writing them to S3.

This prefix appears immediately following the bucket name.

See also: https://docs.aws.amazon.com/firehose/latest/dev/s3-prefixes.html


logGroup?๐Ÿ”น

Type: ILogGroup (optional, default: if logging is set to true, a log group will be created for you.)

The CloudWatch log group where log streams will be created to hold error logs.


logging?๐Ÿ”น

Type: boolean (optional, default: true - errors are logged.)

If true, log errors when data transformation or data delivery fails.

If logGroup is provided, this will be implicitly set to true.


processor?๐Ÿ”น

Type: IDataProcessor (optional, default: no data transformation will occur.)

The data transformation that should be performed on the data before writing to the destination.


role?๐Ÿ”น

Type: IRole (optional, default: a role will be created with default permissions.)

The IAM role associated with this destination.

Assumed by Kinesis Data Firehose to invoke processors and write to destinations


s3Backup?๐Ÿ”น

Type: DestinationS3BackupProps (optional, default: source records will not be backed up to S3.)

The configuration for backing up source records to S3.