Class DataProcessorProps
(experimental) Configure the data processor.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.KinesisFirehose
Assembly: Amazon.CDK.AWS.KinesisFirehose.dll
Syntax (csharp)
public class DataProcessorProps : Object, IDataProcessorProps
Syntax (vb)
Public Class DataProcessorProps
Inherits Object
Implements IDataProcessorProps
Remarks
Stability: Experimental
ExampleMetadata: lit=../aws-kinesisfirehose-destinations/test/integ.s3-bucket.lit.ts infused
Examples
using Path;
using Amazon.CDK.AWS.KinesisFirehose;
using Amazon.CDK.AWS.KMS;
using Amazon.CDK.AWS.Lambda.Nodejs;
using Amazon.CDK.AWS.Logs;
using Amazon.CDK.AWS.S3;
using Amazon.CDK;
using Amazon.CDK.AWS.KinesisFirehose.Destinations;
var app = new App();
var stack = new Stack(app, "aws-cdk-firehose-delivery-stream-s3-all-properties");
var bucket = new Bucket(stack, "Bucket", new BucketProps {
RemovalPolicy = RemovalPolicy.DESTROY,
AutoDeleteObjects = true
});
var backupBucket = new Bucket(stack, "BackupBucket", new BucketProps {
RemovalPolicy = RemovalPolicy.DESTROY,
AutoDeleteObjects = true
});
var logGroup = new LogGroup(stack, "LogGroup", new LogGroupProps {
RemovalPolicy = RemovalPolicy.DESTROY
});
var dataProcessorFunction = new NodejsFunction(stack, "DataProcessorFunction", new NodejsFunctionProps {
Entry = Join(__dirname, "lambda-data-processor.js"),
Timeout = Duration.Minutes(1)
});
var processor = new LambdaFunctionProcessor(dataProcessorFunction, new DataProcessorProps {
BufferInterval = Duration.Seconds(60),
BufferSize = Size.Mebibytes(1),
Retries = 1
});
var key = new Key(stack, "Key", new KeyProps {
RemovalPolicy = RemovalPolicy.DESTROY
});
var backupKey = new Key(stack, "BackupKey", new KeyProps {
RemovalPolicy = RemovalPolicy.DESTROY
});
new DeliveryStream(stack, "Delivery Stream", new DeliveryStreamProps {
Destinations = new [] { new S3Bucket(bucket, new S3BucketProps {
Logging = true,
LogGroup = logGroup,
Processor = processor,
Compression = Compression.GZIP,
DataOutputPrefix = "regularPrefix",
ErrorOutputPrefix = "errorPrefix",
BufferingInterval = Duration.Seconds(60),
BufferingSize = Size.Mebibytes(1),
EncryptionKey = key,
S3Backup = new DestinationS3BackupProps {
Mode = BackupMode.ALL,
Bucket = backupBucket,
Compression = Compression.ZIP,
DataOutputPrefix = "backupPrefix",
ErrorOutputPrefix = "backupErrorPrefix",
BufferingInterval = Duration.Seconds(60),
BufferingSize = Size.Mebibytes(1),
EncryptionKey = backupKey
}
}) }
});
app.Synth();
Synopsis
Constructors
DataProcessorProps() |
Properties
BufferInterval | (experimental) The length of time Kinesis Data Firehose will buffer incoming data before calling the processor. |
BufferSize | (experimental) The amount of incoming data Kinesis Data Firehose will buffer before calling the processor. |
Retries | (experimental) The number of times Kinesis Data Firehose will retry the processor invocation after a failure due to network timeout or invocation limits. |
Constructors
DataProcessorProps()
public DataProcessorProps()
Properties
BufferInterval
(experimental) The length of time Kinesis Data Firehose will buffer incoming data before calling the processor.
public Duration BufferInterval { get; set; }
Property Value
Remarks
s
Default: Duration.minutes(1)
Stability: Experimental
BufferSize
(experimental) The amount of incoming data Kinesis Data Firehose will buffer before calling the processor.
public Size BufferSize { get; set; }
Property Value
Remarks
Default: Size.mebibytes(3)
Stability: Experimental
Retries
(experimental) The number of times Kinesis Data Firehose will retry the processor invocation after a failure due to network timeout or invocation limits.
public Nullable<double> Retries { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Default: 3
Stability: Experimental