StreamEventSourceProps Struct
The set of properties for streaming event sources shared by Dynamo and Kinesis.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';
import { aws_kms as kms } from 'aws-cdk-lib';
import { aws_lambda as lambda } from 'aws-cdk-lib';
import { aws_lambda_event_sources as lambda_event_sources } from 'aws-cdk-lib';
declare const eventSourceDlq: lambda.IEventSourceDlq;
declare const filters: any;
declare const key: kms.Key;
const streamEventSourceProps: lambda_event_sources.StreamEventSourceProps = {
startingPosition: lambda.StartingPosition.TRIM_HORIZON,
// the properties below are optional
batchSize: 123,
bisectBatchOnError: false,
enabled: false,
filterEncryption: key,
filters: [{
filtersKey: filters,
}],
maxBatchingWindow: cdk.Duration.minutes(30),
maxRecordAge: cdk.Duration.minutes(30),
metricsConfig: {
metrics: [lambda.MetricType.EVENT_COUNT],
},
onFailure: eventSourceDlq,
parallelizationFactor: 123,
provisionedPollerConfig: {
maximumPollers: 123,
minimumPollers: 123,
pollerGroupName: 'pollerGroupName',
},
reportBatchItemFailures: false,
retryAttempts: 123,
tumblingWindow: cdk.Duration.minutes(30),
};
Properties
notes
Your function receives an event with all the retrieved records.
Valid Range:
- Minimum value of 1
- Maximum value of:
- 1000 for
DynamoEventSource - 10000 for
KinesisEventSource,ManagedKafkaEventSourceandSelfManagedKafkaEventSource
- 1000 for
bisectBatchOnErrorbooleanbisect_batch_on_errorboolbisectBatchOnErrorBooleanBisectBatchOnErrorboolBisectBatchOnError*bool= false#filterEncryptionIKeyfilter_encryptionIKeyfilterEncryptionIKeyFilterEncryptionIKeyFilterEncryptionIKey= none#filters{ [key: string]: any }[]filterstyping.List[typing.Mapping[str, Any]]filtersList<Map<String, Object>>FiltersIDictionary<string, object>[]Filters*[]*map[string]interface{}= None#maxBatchingWindowDurationmax_batching_windowDurationmaxBatchingWindowDurationMaxBatchingWindowDurationMaxBatchingWindowDuration= Duration.seconds(0) for Kinesis,…#Maximum of Duration.minutes(5).
default
Default: Duration.seconds(0) for Kinesis, DynamoDB, and SQS event sources, Duration.millis(500) for MSK, self-managed Kafka, and Amazon MQ.
maxRecordAgeDurationmax_record_ageDurationmaxRecordAgeDurationMaxRecordAgeDurationMaxRecordAgeDuration= -1#notes
Valid Range:
- Minimum value of 60 seconds
- Maximum value of 7 days
The default value is -1, which sets the maximum age to infinite. When the value is set to infinite, Lambda never discards old records. Record are valid until it expires in the event source.
metricsConfigMetricsConfigmetrics_configMetricsConfigmetricsConfigMetricsConfigMetricsConfigMetricsConfigMetricsConfigMetricsConfig= Enhanced monitoring is disabled#onFailureIEventSourceDlqon_failureIEventSourceDlqonFailureIEventSourceDlqOnFailureIEventSourceDlqOnFailureIEventSourceDlq= discarded records are ignored#parallelizationFactornumberparallelization_factorint | floatparallelizationFactorNumberParallelizationFactordoubleParallelizationFactor*float64= 1#Valid Range:
- Minimum value of 1
- Maximum value of 10
provisionedPollerConfigProvisionedPollerConfigprovisioned_poller_configProvisionedPollerConfigprovisionedPollerConfigProvisionedPollerConfigProvisionedPollerConfigProvisionedPollerConfigProvisionedPollerConfigProvisionedPollerConfig= no provisioned pollers#When specified, allows control over the minimum and maximum number of pollers that can be provisioned to process events from the source.
reportBatchItemFailuresbooleanreport_batch_item_failuresboolreportBatchItemFailuresBooleanReportBatchItemFailuresboolReportBatchItemFailures*bool= false#retryAttemptsnumberretry_attemptsint | floatretryAttemptsNumberRetryAttemptsdoubleRetryAttempts*float64= -1 (infinite retries)#Set to -1 for infinite retries (until the record expires in the event source).
Valid Range: -1 (infinite) or 0 to 10000
startingPositionStartingPositionstarting_positionStartingPositionstartingPositionStartingPositionStartingPositionStartingPositionStartingPositionStartingPositionrequired#