Class FunctionProps.Jsii$Proxy
- All Implemented Interfaces:
EventInvokeConfigOptions
,FunctionOptions
,FunctionProps
,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
- FunctionProps
FunctionProps
-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.lambda.FunctionProps
FunctionProps.Builder, FunctionProps.Jsii$Proxy
-
Constructor Summary
ModifierConstructorDescriptionprotected
Jsii$Proxy
(FunctionProps.Builder builder) Constructor that initializes the object based on literal property values passed by theFunctionProps.Builder
.protected
Jsii$Proxy
(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject. -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
final boolean
Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation.final Boolean
Whether to allow the Lambda to send all ipv6 network traffic.final Boolean
Whether to allow the Lambda to send all network traffic (except ipv6).final Boolean
Lambda Functions in a public subnet can NOT access the internet.final String
(deprecated) Sets the application log level for the function.final ApplicationLogLevel
Sets the application log level for the function.final Architecture
The system architectures compatible with this lambda function.final Code
getCode()
The source code of your Lambda function.final ICodeSigningConfig
Code signing config associated with this function.final VersionOptions
Options for thelambda.Version
resource automatically created by thefn.currentVersion
method.final IQueue
The SQS queue to use if DLQ is enabled.final Boolean
Enabled DLQ.final ITopic
The SNS topic to use as a DLQ.final String
A description of the function.Key-value pairs that Lambda caches and makes available for your Lambda functions.final IKey
The AWS KMS key that's used to encrypt your function's environment variables.final Size
The size of the function’s /tmp directory in MiB.final List<IEventSource>
Event sources for this function.final FileSystem
The filesystem configuration for the lambda function.final String
A name for the function.final String
The name of the method within your code that Lambda calls to execute your function.final List<PolicyStatement>
Initial policy statements to add to the created Lambda Role.final LambdaInsightsVersion
Specify the version of CloudWatch Lambda insights to use for monitoring.final Boolean
Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.final List<ILayerVersion>
A list of layers to add to the function's execution environment.final String
(deprecated) Sets the logFormat for the function.final LoggingFormat
Sets the loggingFormat for the function.final ILogGroup
The log group the function sends logs to.final RetentionDays
The number of days log events are kept in CloudWatch Logs.final LogRetentionRetryOptions
When log retention is specified, a custom resource attempts to create the CloudWatch log group.final IRole
The IAM role for the Lambda function associated with the custom resource that sets the retention policy.final Duration
The maximum age of a request that Lambda sends to a function for processing.final Number
The amount of memory, in MB, that is allocated to your Lambda function.final IDestination
The destination for failed invocations.final IDestination
The destination for successful invocations.Specify the configuration of Parameters and Secrets Extension.final Boolean
Enable profiling.final IProfilingGroup
Profiling Group.final RecursiveLoop
Sets the Recursive Loop Protection for Lambda Function.final Number
The maximum of concurrent executions you want to reserve for the function.final Number
The maximum number of times to retry when the function returns an error.final IRole
getRole()
Lambda execution role.final Runtime
The runtime environment for the Lambda function that you are uploading.final RuntimeManagementMode
Sets the runtime management configuration for a function's version.final List<ISecurityGroup>
The list of security groups to associate with the Lambda's network interfaces.final SnapStartConf
Enable SnapStart for Lambda Function.final String
(deprecated) Sets the system log level for the function.final SystemLogLevel
Sets the system log level for the function.final Duration
The function execution time (in seconds) after which Lambda terminates the function.final Tracing
Enable AWS X-Ray Tracing for Lambda Function.final IVpc
getVpc()
VPC network to place Lambda network interfaces.final SubnetSelection
Where to place the network interfaces within the VPC.final int
hashCode()
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
-
Constructor Details
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject.- Parameters:
objRef
- Reference to the JSII managed object.
-
Jsii$Proxy
Constructor that initializes the object based on literal property values passed by theFunctionProps.Builder
.
-
-
Method Details
-
getCode
Description copied from interface:FunctionProps
The source code of your Lambda function.You can point to a file in an Amazon Simple Storage Service (Amazon S3) bucket or specify your source code as inline text.
- Specified by:
getCode
in interfaceFunctionProps
-
getHandler
Description copied from interface:FunctionProps
The name of the method within your code that Lambda calls to execute your function.The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html.
Use
Handler.FROM_IMAGE
when defining a function from a Docker image.NOTE: If you specify your source code as inline text by specifying the ZipFile property within the Code property, specify index.function_name as the handler.
- Specified by:
getHandler
in interfaceFunctionProps
-
getRuntime
Description copied from interface:FunctionProps
The runtime environment for the Lambda function that you are uploading.For valid values, see the Runtime property in the AWS Lambda Developer Guide.
Use
Runtime.FROM_IMAGE
when defining a function from a Docker image.- Specified by:
getRuntime
in interfaceFunctionProps
-
getAdotInstrumentation
Description copied from interface:FunctionOptions
Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation.Default: - No ADOT instrumentation
- Specified by:
getAdotInstrumentation
in interfaceFunctionOptions
- See Also:
-
getAllowAllIpv6Outbound
Description copied from interface:FunctionOptions
Whether to allow the Lambda to send all ipv6 network traffic.If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6.
Do not specify this property if the
securityGroups
orsecurityGroup
property is set. Instead, configureallowAllIpv6Outbound
directly on the security group.Default: false
- Specified by:
getAllowAllIpv6Outbound
in interfaceFunctionOptions
-
getAllowAllOutbound
Description copied from interface:FunctionOptions
Whether to allow the Lambda to send all network traffic (except ipv6).If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets.
Do not specify this property if the
securityGroups
orsecurityGroup
property is set. Instead, configureallowAllOutbound
directly on the security group.Default: true
- Specified by:
getAllowAllOutbound
in interfaceFunctionOptions
-
getAllowPublicSubnet
Description copied from interface:FunctionOptions
Lambda Functions in a public subnet can NOT access the internet.Use this property to acknowledge this limitation and still place the function in a public subnet.
Default: false
-
getApplicationLogLevel
Description copied from interface:FunctionOptions
(deprecated) Sets the application log level for the function.Default: "INFO"
- Specified by:
getApplicationLogLevel
in interfaceFunctionOptions
-
getApplicationLogLevelV2
Description copied from interface:FunctionOptions
Sets the application log level for the function.Default: ApplicationLogLevel.INFO
- Specified by:
getApplicationLogLevelV2
in interfaceFunctionOptions
-
getArchitecture
Description copied from interface:FunctionOptions
The system architectures compatible with this lambda function.Default: Architecture.X86_64
- Specified by:
getArchitecture
in interfaceFunctionOptions
-
getCodeSigningConfig
Description copied from interface:FunctionOptions
Code signing config associated with this function.Default: - Not Sign the Code
- Specified by:
getCodeSigningConfig
in interfaceFunctionOptions
-
getCurrentVersionOptions
Description copied from interface:FunctionOptions
Options for thelambda.Version
resource automatically created by thefn.currentVersion
method.Default: - default options as described in `VersionOptions`
- Specified by:
getCurrentVersionOptions
in interfaceFunctionOptions
-
getDeadLetterQueue
Description copied from interface:FunctionOptions
The SQS queue to use if DLQ is enabled.If SNS topic is desired, specify
deadLetterTopic
property instead.Default: - SQS queue with 14 day retention period if `deadLetterQueueEnabled` is `true`
- Specified by:
getDeadLetterQueue
in interfaceFunctionOptions
-
getDeadLetterQueueEnabled
Description copied from interface:FunctionOptions
Enabled DLQ.If
deadLetterQueue
is undefined, an SQS queue with default options will be defined for your Function.Default: - false unless `deadLetterQueue` is set, which implies DLQ is enabled.
- Specified by:
getDeadLetterQueueEnabled
in interfaceFunctionOptions
-
getDeadLetterTopic
Description copied from interface:FunctionOptions
The SNS topic to use as a DLQ.Note that if
deadLetterQueueEnabled
is set totrue
, an SQS queue will be created rather than an SNS topic. Using an SNS topic as a DLQ requires this property to be set explicitly.Default: - no SNS topic
- Specified by:
getDeadLetterTopic
in interfaceFunctionOptions
-
getDescription
Description copied from interface:FunctionOptions
A description of the function.Default: - No description.
- Specified by:
getDescription
in interfaceFunctionOptions
-
getEnvironment
Description copied from interface:FunctionOptions
Key-value pairs that Lambda caches and makes available for your Lambda functions.Use environment variables to apply configuration changes, such as test and production environment configurations, without changing your Lambda function source code.
Default: - No environment variables.
- Specified by:
getEnvironment
in interfaceFunctionOptions
-
getEnvironmentEncryption
Description copied from interface:FunctionOptions
The AWS KMS key that's used to encrypt your function's environment variables.Default: - AWS Lambda creates and uses an AWS managed customer master key (CMK).
- Specified by:
getEnvironmentEncryption
in interfaceFunctionOptions
-
getEphemeralStorageSize
Description copied from interface:FunctionOptions
The size of the function’s /tmp directory in MiB.Default: 512 MiB
- Specified by:
getEphemeralStorageSize
in interfaceFunctionOptions
-
getEvents
Description copied from interface:FunctionOptions
Event sources for this function.You can also add event sources using
addEventSource
.Default: - No event sources.
- Specified by:
getEvents
in interfaceFunctionOptions
-
getFilesystem
Description copied from interface:FunctionOptions
The filesystem configuration for the lambda function.Default: - will not mount any filesystem
- Specified by:
getFilesystem
in interfaceFunctionOptions
-
getFunctionName
Description copied from interface:FunctionOptions
A name for the function.Default: - AWS CloudFormation generates a unique physical ID and uses that ID for the function's name. For more information, see Name Type.
- Specified by:
getFunctionName
in interfaceFunctionOptions
-
getInitialPolicy
Description copied from interface:FunctionOptions
Initial policy statements to add to the created Lambda Role.You can call
addToRolePolicy
to the created lambda to add statements post creation.Default: - No policy statements are added to the created Lambda role.
- Specified by:
getInitialPolicy
in interfaceFunctionOptions
-
getInsightsVersion
Description copied from interface:FunctionOptions
Specify the version of CloudWatch Lambda insights to use for monitoring.Default: - No Lambda Insights
- Specified by:
getInsightsVersion
in interfaceFunctionOptions
- See Also:
-
getIpv6AllowedForDualStack
Description copied from interface:FunctionOptions
Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.Only used if 'vpc' is supplied.
Default: false
- Specified by:
getIpv6AllowedForDualStack
in interfaceFunctionOptions
-
getLayers
Description copied from interface:FunctionOptions
A list of layers to add to the function's execution environment.You can configure your Lambda function to pull in additional code during initialization in the form of layers. Layers are packages of libraries or other dependencies that can be used by multiple functions.
Default: - No layers.
- Specified by:
getLayers
in interfaceFunctionOptions
-
getLogFormat
Description copied from interface:FunctionOptions
(deprecated) Sets the logFormat for the function.Default: "Text"
- Specified by:
getLogFormat
in interfaceFunctionOptions
-
getLoggingFormat
Description copied from interface:FunctionOptions
Sets the loggingFormat for the function.Default: LoggingFormat.TEXT
- Specified by:
getLoggingFormat
in interfaceFunctionOptions
-
getLogGroup
Description copied from interface:FunctionOptions
The log group the function sends logs to.By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/
. However you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention. Use the
logGroup
property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.Providing a user-controlled log group was rolled out to commercial regions on 2023-11-16. If you are deploying to another type of region, please check regional availability first.
Default: `/aws/lambda/${this.functionName}` - default log group created by Lambda
- Specified by:
getLogGroup
in interfaceFunctionOptions
-
getLogRetention
Description copied from interface:FunctionOptions
The number of days log events are kept in CloudWatch Logs.When updating this property, unsetting it doesn't remove the log retention policy. To remove the retention policy, set the value to
INFINITE
.This is a legacy API and we strongly recommend you move away from it if you can. Instead create a fully customizable log group with
logs.LogGroup
and use thelogGroup
property to instruct the Lambda function to send logs to it. Migrating fromlogRetention
tologGroup
will cause the name of the log group to change. Users and code and referencing the name verbatim will have to adjust.In AWS CDK code, you can access the log group name directly from the LogGroup construct:
import software.amazon.awscdk.services.logs.*; LogGroup myLogGroup; myLogGroup.getLogGroupName();
Default: logs.RetentionDays.INFINITE
- Specified by:
getLogRetention
in interfaceFunctionOptions
-
getLogRetentionRetryOptions
Description copied from interface:FunctionOptions
When log retention is specified, a custom resource attempts to create the CloudWatch log group.These options control the retry policy when interacting with CloudWatch APIs.
This is a legacy API and we strongly recommend you migrate to
logGroup
if you can.logGroup
allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.Default: - Default AWS SDK retry options.
- Specified by:
getLogRetentionRetryOptions
in interfaceFunctionOptions
-
getLogRetentionRole
Description copied from interface:FunctionOptions
The IAM role for the Lambda function associated with the custom resource that sets the retention policy.This is a legacy API and we strongly recommend you migrate to
logGroup
if you can.logGroup
allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.Default: - A new role is created.
- Specified by:
getLogRetentionRole
in interfaceFunctionOptions
-
getMemorySize
Description copied from interface:FunctionOptions
The amount of memory, in MB, that is allocated to your Lambda function.Lambda uses this value to proportionally allocate the amount of CPU power. For more information, see Resource Model in the AWS Lambda Developer Guide.
Default: 128
- Specified by:
getMemorySize
in interfaceFunctionOptions
-
getParamsAndSecrets
Description copied from interface:FunctionOptions
Specify the configuration of Parameters and Secrets Extension.Default: - No Parameters and Secrets Extension
- Specified by:
getParamsAndSecrets
in interfaceFunctionOptions
- See Also:
-
getProfiling
Description copied from interface:FunctionOptions
Enable profiling.Default: - No profiling.
- Specified by:
getProfiling
in interfaceFunctionOptions
- See Also:
-
getProfilingGroup
Description copied from interface:FunctionOptions
Profiling Group.Default: - A new profiling group will be created if `profiling` is set.
- Specified by:
getProfilingGroup
in interfaceFunctionOptions
- See Also:
-
getRecursiveLoop
Description copied from interface:FunctionOptions
Sets the Recursive Loop Protection for Lambda Function.It lets Lambda detect and terminate unintended recursive loops.
Default: RecursiveLoop.Terminate
- Specified by:
getRecursiveLoop
in interfaceFunctionOptions
-
getReservedConcurrentExecutions
Description copied from interface:FunctionOptions
The maximum of concurrent executions you want to reserve for the function.Default: - No specific limit - account limit.
- Specified by:
getReservedConcurrentExecutions
in interfaceFunctionOptions
- See Also:
-
getRole
Description copied from interface:FunctionOptions
Lambda execution role.This is the role that will be assumed by the function upon execution. It controls the permissions that the function will have. The Role must be assumable by the 'lambda.amazonaws.com' service principal.
The default Role automatically has permissions granted for Lambda execution. If you provide a Role, you must add the relevant AWS managed policies yourself.
The relevant managed policies are "service-role/AWSLambdaBasicExecutionRole" and "service-role/AWSLambdaVPCAccessExecutionRole".
Default: - A unique role will be generated for this lambda function. Both supplied and generated roles can always be changed by calling `addToRolePolicy`.
- Specified by:
getRole
in interfaceFunctionOptions
-
getRuntimeManagementMode
Description copied from interface:FunctionOptions
Sets the runtime management configuration for a function's version.Default: Auto
- Specified by:
getRuntimeManagementMode
in interfaceFunctionOptions
-
getSecurityGroups
Description copied from interface:FunctionOptions
The list of security groups to associate with the Lambda's network interfaces.Only used if 'vpc' is supplied.
Default: - If the function is placed within a VPC and a security group is not specified, either by this or securityGroup prop, a dedicated security group will be created for this function.
- Specified by:
getSecurityGroups
in interfaceFunctionOptions
-
getSnapStart
Description copied from interface:FunctionOptions
Enable SnapStart for Lambda Function.SnapStart is currently supported for Java 11, Java 17, Python 3.12, Python 3.13, and .NET 8 runtime
Default: - No snapstart
- Specified by:
getSnapStart
in interfaceFunctionOptions
-
getSystemLogLevel
Description copied from interface:FunctionOptions
(deprecated) Sets the system log level for the function.Default: "INFO"
- Specified by:
getSystemLogLevel
in interfaceFunctionOptions
-
getSystemLogLevelV2
Description copied from interface:FunctionOptions
Sets the system log level for the function.Default: SystemLogLevel.INFO
- Specified by:
getSystemLogLevelV2
in interfaceFunctionOptions
-
getTimeout
Description copied from interface:FunctionOptions
The function execution time (in seconds) after which Lambda terminates the function.Because the execution time affects cost, set this value based on the function's expected execution time.
Default: Duration.seconds(3)
- Specified by:
getTimeout
in interfaceFunctionOptions
-
getTracing
Description copied from interface:FunctionOptions
Enable AWS X-Ray Tracing for Lambda Function.Default: Tracing.Disabled
- Specified by:
getTracing
in interfaceFunctionOptions
-
getVpc
Description copied from interface:FunctionOptions
VPC network to place Lambda network interfaces.Specify this if the Lambda function needs to access resources in a VPC. This is required when
vpcSubnets
is specified.Default: - Function is not placed within a VPC.
- Specified by:
getVpc
in interfaceFunctionOptions
-
getVpcSubnets
Description copied from interface:FunctionOptions
Where to place the network interfaces within the VPC.This requires
vpc
to be specified in order for interfaces to actually be placed in the subnets. Ifvpc
is not specify, this will raise an error.Note: Internet access for Lambda Functions requires a NAT Gateway, so picking public subnets is not allowed (unless
allowPublicSubnet
is set totrue
).Default: - the Vpc default strategy if not specified
- Specified by:
getVpcSubnets
in interfaceFunctionOptions
-
getMaxEventAge
Description copied from interface:EventInvokeConfigOptions
The maximum age of a request that Lambda sends to a function for processing.Minimum: 60 seconds Maximum: 6 hours
Default: Duration.hours(6)
- Specified by:
getMaxEventAge
in interfaceEventInvokeConfigOptions
-
getOnFailure
Description copied from interface:EventInvokeConfigOptions
The destination for failed invocations.Default: - no destination
- Specified by:
getOnFailure
in interfaceEventInvokeConfigOptions
-
getOnSuccess
Description copied from interface:EventInvokeConfigOptions
The destination for successful invocations.Default: - no destination
- Specified by:
getOnSuccess
in interfaceEventInvokeConfigOptions
-
getRetryAttempts
Description copied from interface:EventInvokeConfigOptions
The maximum number of times to retry when the function returns an error.Minimum: 0 Maximum: 2
Default: 2
- Specified by:
getRetryAttempts
in interfaceEventInvokeConfigOptions
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJson
in interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-