Package: aws-solutions-constructs.aws-kinesis-streams-lambda
aws-kinesisstreams-lambda module---Reference Documentation:https://docs.aws.amazon.com/solutions/latest/constructs/LanguagePackagePythonaws_solutions_constructs.aws-kinesis-streams-lambdaTypescript@aws-solutions-constructs/aws-kinesisstreams-lambdaJavasoftware.amazon.awsconstructs.services.kinesisstreamslambdaOverviewThis AWS Solutions Construct deploys a Kinesis Stream and Lambda function with the appropriate resources/properties for interaction and security.Here is a minimal deployable pattern definition:Typescriptimport{Construct}from'constructs';import{Stack,StackProps}from'aws-cdk-lib';import{KinesisStreamsToLambda}from'@aws-solutions-constructs/aws-kinesisstreams-lambda';import*aslambdafrom'aws-cdk-lib/aws-lambda';newKinesisStreamsToLambda(this,'KinesisToLambdaPattern',{kinesisEventSourceProps:{startingPosition:lambda.StartingPosition.TRIM_HORIZON,batchSize:1},lambdaFunctionProps:{runtime:lambda.Runtime.NODEJS_16_X,handler:'index.handler',code:lambda.Code.fromAsset(`lambda`)}});Pythonfromaws_solutions_constructs.aws_kinesis_streams_lambdaimportKinesisStreamsToLambdafromaws_cdkimport(aws_lambdaas_lambda,aws_lambda_event_sourcesassources,aws_kinesisaskinesis,Stack)fromconstructsimportConstructKinesisStreamsToLambda(self,'KinesisToLambdaPattern',kinesis_event_source_props=sources.KinesisEventSourceProps(starting_position=_lambda.StartingPosition.TRIM_HORIZON,batch_size=1),lambda_function_props=_lambda.FunctionProps(runtime=_lambda.Runtime.PYTHON_3_9,handler='index.handler',code=_lambda.Code.from_asset('lambda')))Javaimportsoftware.constructs.Construct;importsoftware.amazon.awscdk.Stack;importsoftware.amazon.awscdk.StackProps;importsoftware.amazon.awscdk.services.lambda.*;importsoftware.amazon.awscdk.services.lambda.eventsources.*;importsoftware.amazon.awscdk.services.lambda.Runtime;importsoftware.amazon.awsconstructs.services.kinesisstreamslambda.*;newKinesisStreamsToLambda(this,"KinesisToLambdaPattern",newKinesisStreamsToLambdaProps.Builder().kinesisEventSourceProps(newKinesisEventSourceProps.Builder().startingPosition(StartingPosition.TRIM_HORIZON).batchSize(1).build()).lambdaFunctionProps(newFunctionProps.Builder().runtime(Runtime.NODEJS_16_X).code(Code.fromAsset("lambda")).handler("index.handler").build()).build());Pattern Construct PropsNameTypeDescriptionexistingLambdaObj?lambda.FunctionExisting instance of Lambda Function object, providing both this andlambdaFunctionPropswill cause an error.lambdaFunctionProps?lambda.FunctionPropsUser provided props to override the default props for the Lambda function.kinesisStreamProps?kinesis.StreamPropsOptional user-provided props to override the default props for the Kinesis stream.existingStreamObj?kinesis.StreamExisting instance of Kinesis Stream, providing both this andkinesisStreamPropswill cause an error.kinesisEventSourceProps?aws-lambda-event-sources.KinesisEventSourcePropsOptional user-provided props to override the default props for the Lambda event source mapping.createCloudWatchAlarmsbooleanWhether to create recommended CloudWatch alarmsPattern PropertiesNameTypeDescriptionkinesisStreamkinesis.StreamReturns an instance of the Kinesis stream created by the pattern.lambdaFunctionlambda.FunctionReturns an instance of the Lambda function created by the pattern.kinesisStreamRoleiam.RoleReturns an instance of the iam.Role created by the construct for Kinesis stream.cloudwatchAlarms?cloudwatch.Alarm[]Returns a list of cloudwatch.Alarm created by the constructDefault settingsOut of the box implementation of the Construct without any override will set the following defaults:Amazon Kinesis StreamConfigure least privilege access IAM role for Kinesis StreamEnable server-side encryption for Kinesis Stream using AWS Managed KMS KeyDeploy best practices CloudWatch Alarms for the Kinesis StreamAWS Lambda FunctionConfigure limited privilege access IAM role for Lambda functionEnable reusing connections with Keep-Alive for NodeJs Lambda functionEnable X-Ray TracingEnable Failure-Handling features like enable bisect on function Error, set defaults for Maximum Record Age (24 hours) & Maximum Retry Attempts (500) and deploy SQS dead-letter queue as destination on failureSet Environment VariablesAWS_NODEJS_CONNECTION_REUSE_ENABLED (for Node 10.x and higher functions)Architecture© Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.