KinesisConsumerEventSource Class
Use an Amazon Kinesis stream consumer as an event source for AWS Lambda.
Example
ts
import * as kinesis from 'aws-cdk-lib/aws-kinesis';
import { KinesisConsumerEventSource } from 'aws-cdk-lib/aws-lambda-event-sources';
const stream = new kinesis.Stream(this, 'MyStream');
const streamConsumer = new kinesis.StreamConsumer(this, 'MyStreamConsumer', {
stream,
streamConsumerName: 'MyStreamConsumer',
});
declare const myFunction: lambda.Function;
myFunction.addEventSource(new KinesisConsumerEventSource(streamConsumer, {
batchSize: 100, // default
startingPosition: lambda.StartingPosition.TRIM_HORIZON,
}));
python
import aws_cdk.aws_kinesis as kinesis
from aws_cdk.aws_lambda_event_sources import KinesisConsumerEventSource
# my_function: lambda.Function
stream = kinesis.Stream(self, "MyStream")
stream_consumer = kinesis.StreamConsumer(self, "MyStreamConsumer",
stream=stream,
stream_consumer_name="MyStreamConsumer"
)
my_function.add_event_source(KinesisConsumerEventSource(stream_consumer,
batch_size=100, # default
starting_position=lambda_.StartingPosition.TRIM_HORIZON
))
java
import software.amazon.awscdk.services.kinesis.*;
import software.amazon.awscdk.services.lambda.eventsources.KinesisConsumerEventSource;
Function myFunction;
Stream stream = new Stream(this, "MyStream");
StreamConsumer streamConsumer = StreamConsumer.Builder.create(this, "MyStreamConsumer")
.stream(stream)
.streamConsumerName("MyStreamConsumer")
.build();
myFunction.addEventSource(KinesisConsumerEventSource.Builder.create(streamConsumer)
.batchSize(100) // default
.startingPosition(StartingPosition.TRIM_HORIZON)
.build());
csharp
// Install: dotnet add package Amazon.CDK.Lib
using Amazon.CDK.AWS.Kinesis;
using Amazon.CDK.AWS.Lambda.EventSources;
Function myFunction;
var stream = new Stream(this, "MyStream");
var streamConsumer = new StreamConsumer(this, "MyStreamConsumer", new StreamConsumerProps {
Stream = stream,
StreamConsumerName = "MyStreamConsumer"
});
myFunction.AddEventSource(new KinesisConsumerEventSource(streamConsumer, new KinesisEventSourceProps {
BatchSize = 100, // default
StartingPosition = StartingPosition.TRIM_HORIZON
}));
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
import "github.com/aws/aws-cdk-go/awscdk"
import "github.com/aws/aws-cdk-go/awscdk"
var myFunction Function
stream := kinesis.NewStream(this, jsii.String("MyStream"))
streamConsumer := kinesis.NewStreamConsumer(this, jsii.String("MyStreamConsumer"), &StreamConsumerProps{
Stream: Stream,
StreamConsumerName: jsii.String("MyStreamConsumer"),
})
myFunction.AddEventSource(awscdk.NewKinesisConsumerEventSource(streamConsumer, &KinesisEventSourceProps{
BatchSize: jsii.Number(100),
// default
StartingPosition: lambda.StartingPosition_TRIM_HORIZON,
}))
Initializer
ts
new KinesisConsumerEventSource(streamConsumer: IStreamConsumer, props: KinesisEventSourceProps)
python
KinesisConsumerEventSource(stream_consumer: IStreamConsumer, props: KinesisEventSourceProps)
java
new KinesisConsumerEventSource(IStreamConsumer streamConsumer, KinesisEventSourceProps props)
csharp
new KinesisConsumerEventSource(IStreamConsumer streamConsumer, KinesisEventSourceProps props)
go
NewKinesisConsumerEventSource(StreamConsumer IStreamConsumer, Props KinesisEventSourceProps)
Properties
eventSourceMappingArnstringevent_source_mapping_arnstreventSourceMappingArnStringEventSourceMappingArnstringEventSourceMappingArn*stringrequired#The ARN for this EventSourceMapping.
eventSourceMappingIdstringevent_source_mapping_idstreventSourceMappingIdStringEventSourceMappingIdstringEventSourceMappingId*stringrequired#The identifier for this EventSourceMapping.
streamConsumerIStreamConsumerstream_consumerIStreamConsumerstreamConsumerIStreamConsumerStreamConsumerIStreamConsumerStreamConsumerIStreamConsumerrequired#