DockerImageFunction
- class aws_cdk.aws_lambda.DockerImageFunction(scope, id, *, code, adot_instrumentation=None, allow_all_ipv6_outbound=None, allow_all_outbound=None, allow_public_subnet=None, application_log_level=None, application_log_level_v2=None, architecture=None, code_signing_config=None, current_version_options=None, dead_letter_queue=None, dead_letter_queue_enabled=None, dead_letter_topic=None, description=None, environment=None, environment_encryption=None, ephemeral_storage_size=None, events=None, filesystem=None, function_name=None, initial_policy=None, insights_version=None, ipv6_allowed_for_dual_stack=None, layers=None, log_format=None, logging_format=None, log_group=None, log_retention=None, log_retention_retry_options=None, log_retention_role=None, memory_size=None, params_and_secrets=None, profiling=None, profiling_group=None, recursive_loop=None, reserved_concurrent_executions=None, role=None, runtime_management_mode=None, security_groups=None, snap_start=None, system_log_level=None, system_log_level_v2=None, timeout=None, tracing=None, vpc=None, vpc_subnets=None, max_event_age=None, on_failure=None, on_success=None, retry_attempts=None)
Bases:
Function
Create a lambda function where the handler is a docker image.
- ExampleMetadata:
infused
Example:
lambda_.DockerImageFunction(self, "AssetFunction", code=lambda_.DockerImageCode.from_image_asset(path.join(__dirname, "docker-handler")) )
- Parameters:
scope (
Construct
)id (
str
)code (
DockerImageCode
) – 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.adot_instrumentation (
Union
[AdotInstrumentationConfig
,Dict
[str
,Any
],None
]) – Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentationallow_all_ipv6_outbound (
Optional
[bool
]) – 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 thesecurityGroups
orsecurityGroup
property is set. Instead, configureallowAllIpv6Outbound
directly on the security group. Default: falseallow_all_outbound (
Optional
[bool
]) – 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 thesecurityGroups
orsecurityGroup
property is set. Instead, configureallowAllOutbound
directly on the security group. Default: trueallow_public_subnet (
Optional
[bool
]) – 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: falseapplication_log_level (
Optional
[str
]) – (deprecated) Sets the application log level for the function. Default: “INFO”application_log_level_v2 (
Optional
[ApplicationLogLevel
]) – Sets the application log level for the function. Default: ApplicationLogLevel.INFOarchitecture (
Optional
[Architecture
]) – The system architectures compatible with this lambda function. Default: Architecture.X86_64code_signing_config (
Optional
[ICodeSigningConfig
]) – Code signing config associated with this function. Default: - Not Sign the Codecurrent_version_options (
Union
[VersionOptions
,Dict
[str
,Any
],None
]) – Options for thelambda.Version
resource automatically created by thefn.currentVersion
method. Default: - default options as described inVersionOptions
dead_letter_queue (
Optional
[IQueue
]) – The SQS queue to use if DLQ is enabled. If SNS topic is desired, specifydeadLetterTopic
property instead. Default: - SQS queue with 14 day retention period ifdeadLetterQueueEnabled
istrue
dead_letter_queue_enabled (
Optional
[bool
]) – Enabled DLQ. IfdeadLetterQueue
is undefined, an SQS queue with default options will be defined for your Function. Default: - false unlessdeadLetterQueue
is set, which implies DLQ is enabled.dead_letter_topic (
Optional
[ITopic
]) – The SNS topic to use as a DLQ. Note that ifdeadLetterQueueEnabled
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 topicdescription (
Optional
[str
]) – A description of the function. Default: - No description.environment (
Optional
[Mapping
[str
,str
]]) – 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.environment_encryption (
Optional
[IKey
]) – 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).ephemeral_storage_size (
Optional
[Size
]) – The size of the function’s /tmp directory in MiB. Default: 512 MiBevents (
Optional
[Sequence
[IEventSource
]]) – Event sources for this function. You can also add event sources usingaddEventSource
. Default: - No event sources.filesystem (
Optional
[FileSystem
]) – The filesystem configuration for the lambda function. Default: - will not mount any filesystemfunction_name (
Optional
[str
]) – 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.initial_policy (
Optional
[Sequence
[PolicyStatement
]]) – Initial policy statements to add to the created Lambda Role. You can calladdToRolePolicy
to the created lambda to add statements post creation. Default: - No policy statements are added to the created Lambda role.insights_version (
Optional
[LambdaInsightsVersion
]) – Specify the version of CloudWatch Lambda insights to use for monitoring. Default: - No Lambda Insightsipv6_allowed_for_dual_stack (
Optional
[bool
]) – Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets. Only used if ‘vpc’ is supplied. Default: falselayers (
Optional
[Sequence
[ILayerVersion
]]) – 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.log_format (
Optional
[str
]) – (deprecated) Sets the logFormat for the function. Default: “Text”logging_format (
Optional
[LoggingFormat
]) – Sets the loggingFormat for the function. Default: LoggingFormat.TEXTlog_group (
Optional
[ILogGroup
]) – The log group the function sends logs to. By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/<function name>. 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 thelogGroup
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 Lambdalog_retention (
Optional
[RetentionDays
]) – 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 toINFINITE
. This is a legacy API and we strongly recommend you move away from it if you can. Instead create a fully customizable log group withlogs.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 * as logs from ‘aws-cdk-lib/aws-logs’; declare const myLogGroup: logs.LogGroup; myLogGroup.logGroupName; Default: logs.RetentionDays.INFINITElog_retention_retry_options (
Union
[LogRetentionRetryOptions
,Dict
[str
,Any
],None
]) – 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 tologGroup
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.log_retention_role (
Optional
[IRole
]) – 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 tologGroup
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.memory_size (
Union
[int
,float
,None
]) – 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: 128params_and_secrets (
Optional
[ParamsAndSecretsLayerVersion
]) – Specify the configuration of Parameters and Secrets Extension. Default: - No Parameters and Secrets Extensionprofiling (
Optional
[bool
]) – Enable profiling. Default: - No profiling.profiling_group (
Optional
[IProfilingGroup
]) – Profiling Group. Default: - A new profiling group will be created ifprofiling
is set.recursive_loop (
Optional
[RecursiveLoop
]) – Sets the Recursive Loop Protection for Lambda Function. It lets Lambda detect and terminate unintended recursive loops. Default: RecursiveLoop.Terminatereserved_concurrent_executions (
Union
[int
,float
,None
]) – The maximum of concurrent executions you want to reserve for the function. Default: - No specific limit - account limit.role (
Optional
[IRole
]) – 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 callingaddToRolePolicy
.runtime_management_mode (
Optional
[RuntimeManagementMode
]) – Sets the runtime management configuration for a function’s version. Default: Autosecurity_groups (
Optional
[Sequence
[ISecurityGroup
]]) – 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.snap_start (
Optional
[SnapStartConf
]) – 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 snapstartsystem_log_level (
Optional
[str
]) – (deprecated) Sets the system log level for the function. Default: “INFO”system_log_level_v2 (
Optional
[SystemLogLevel
]) – Sets the system log level for the function. Default: SystemLogLevel.INFOtimeout (
Optional
[Duration
]) – 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)tracing (
Optional
[Tracing
]) – Enable AWS X-Ray Tracing for Lambda Function. Default: Tracing.Disabledvpc (
Optional
[IVpc
]) – VPC network to place Lambda network interfaces. Specify this if the Lambda function needs to access resources in a VPC. This is required whenvpcSubnets
is specified. Default: - Function is not placed within a VPC.vpc_subnets (
Union
[SubnetSelection
,Dict
[str
,Any
],None
]) – Where to place the network interfaces within the VPC. This requiresvpc
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 (unlessallowPublicSubnet
is set totrue
). Default: - the Vpc default strategy if not specifiedmax_event_age (
Optional
[Duration
]) – The maximum age of a request that Lambda sends to a function for processing. Minimum: 60 seconds Maximum: 6 hours Default: Duration.hours(6)on_failure (
Optional
[IDestination
]) – The destination for failed invocations. Default: - no destinationon_success (
Optional
[IDestination
]) – The destination for successful invocations. Default: - no destinationretry_attempts (
Union
[int
,float
,None
]) – The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
Methods
- add_alias(alias_name, *, additional_versions=None, description=None, provisioned_concurrent_executions=None, max_event_age=None, on_failure=None, on_success=None, retry_attempts=None)
Defines an alias for this function.
The alias will automatically be updated to point to the latest version of the function as it is being updated during a deployment:
# fn: lambda.Function fn.add_alias("Live") # Is equivalent to lambda_.Alias(self, "AliasLive", alias_name="Live", version=fn.current_version )
- Parameters:
alias_name (
str
) – The name of the alias.additional_versions (
Optional
[Sequence
[Union
[VersionWeight
,Dict
[str
,Any
]]]]) – Additional versions with individual weights this alias points to. Individual additional version weights specified here should add up to (less than) one. All remaining weight is routed to the default version. For example, the config is version: “1” additionalVersions: [{ version: “2”, weight: 0.05 }] Then 5% of traffic will be routed to function version 2, while the remaining 95% of traffic will be routed to function version 1. Default: No additional versionsdescription (
Optional
[str
]) – Description for the alias. Default: No descriptionprovisioned_concurrent_executions (
Union
[int
,float
,None
]) – Specifies a provisioned concurrency configuration for a function’s alias. Default: No provisioned concurrencymax_event_age (
Optional
[Duration
]) – The maximum age of a request that Lambda sends to a function for processing. Minimum: 60 seconds Maximum: 6 hours Default: Duration.hours(6)on_failure (
Optional
[IDestination
]) – The destination for failed invocations. Default: - no destinationon_success (
Optional
[IDestination
]) – The destination for successful invocations. Default: - no destinationretry_attempts (
Union
[int
,float
,None
]) – The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
- Return type:
- add_environment(key, value, *, remove_in_edge=None)
Adds an environment variable to this Lambda function.
If this is a ref to a Lambda function, this operation results in a no-op.
- Parameters:
key (
str
) – The environment variable key.value (
str
) – The environment variable’s value.remove_in_edge (
Optional
[bool
]) – When used in Lambda@Edge via edgeArn() API, these environment variables will be removed. If not set, an error will be thrown. Default: false - using the function in Lambda@Edge will throw
- Return type:
- add_event_source(source)
Adds an event source to this function.
Event sources are implemented in the aws-cdk-lib/aws-lambda-event-sources module.
The following example adds an SQS Queue as an event source:
import { SqsEventSource } from 'aws-cdk-lib/aws-lambda-event-sources'; myFunction.addEventSource(new SqsEventSource(myQueue));
- Parameters:
source (
IEventSource
)- Return type:
None
- add_event_source_mapping(id, *, batch_size=None, bisect_batch_on_error=None, enabled=None, event_source_arn=None, filter_encryption=None, filters=None, kafka_bootstrap_servers=None, kafka_consumer_group_id=None, kafka_topic=None, max_batching_window=None, max_concurrency=None, max_record_age=None, metrics_config=None, on_failure=None, parallelization_factor=None, provisioned_poller_config=None, report_batch_item_failures=None, retry_attempts=None, source_access_configurations=None, starting_position=None, starting_position_timestamp=None, support_s3_on_failure_destination=None, tumbling_window=None)
Adds an event source that maps to this AWS Lambda function.
- Parameters:
id (
str
)batch_size (
Union
[int
,float
,None
]) – The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records. Valid Range: Minimum value of 1. Maximum value of 10000. Default: - Amazon Kinesis, Amazon DynamoDB, and Amazon MSK is 100 records. The default for Amazon SQS is 10 messages. For standard SQS queues, the maximum is 10,000. For FIFO SQS queues, the maximum is 10.bisect_batch_on_error (
Optional
[bool
]) – If the function returns an error, split the batch in two and retry. Default: falseenabled (
Optional
[bool
]) – Set to false to disable the event source upon creation. Default: trueevent_source_arn (
Optional
[str
]) – The Amazon Resource Name (ARN) of the event source. Any record added to this stream can invoke the Lambda function. Default: - not set if using a self managed Kafka cluster, throws an error otherwisefilter_encryption (
Optional
[IKey
]) – Add Customer managed KMS key to encrypt Filter Criteria. Default: - nonefilters (
Optional
[Sequence
[Mapping
[str
,Any
]]]) – Add filter criteria to Event Source. Default: - nonekafka_bootstrap_servers (
Optional
[Sequence
[str
]]) – A list of host and port pairs that are the addresses of the Kafka brokers in a self managed “bootstrap” Kafka cluster that a Kafka client connects to initially to bootstrap itself. They are in the formatabc.example.com:9096
. Default: - nonekafka_consumer_group_id (
Optional
[str
]) – The identifier for the Kafka consumer group to join. The consumer group ID must be unique among all your Kafka event sources. After creating a Kafka event source mapping with the consumer group ID specified, you cannot update this value. The value must have a lenght between 1 and 200 and full the pattern ‘[a-zA-Z0-9-/:_+=.@-]’. For more information, see Customizable consumer group ID. Default: - nonekafka_topic (
Optional
[str
]) – The name of the Kafka topic. Default: - no topicmax_batching_window (
Optional
[Duration
]) – The maximum amount of time to gather records before invoking the function. Maximum of Duration.minutes(5) Default: Duration.seconds(0)max_concurrency (
Union
[int
,float
,None
]) – The maximum concurrency setting limits the number of concurrent instances of the function that an Amazon SQS event source can invoke. Default: - No specific limit.max_record_age (
Optional
[Duration
]) – The maximum age of a record that Lambda sends to a function for processing. Valid Range: - Minimum value of 60 seconds - Maximum value of 7 days Default: - infinite or until the record expires.metrics_config (
Union
[MetricsConfig
,Dict
[str
,Any
],None
]) – Configuration for enhanced monitoring metrics collection When specified, enables collection of additional metrics for the stream event source. Default: - Enhanced monitoring is disabledon_failure (
Optional
[IEventSourceDlq
]) – An Amazon SQS queue or Amazon SNS topic destination for discarded records. Default: discarded records are ignoredparallelization_factor (
Union
[int
,float
,None
]) – The number of batches to process from each shard concurrently. Valid Range: - Minimum value of 1 - Maximum value of 10 Default: 1provisioned_poller_config (
Union
[ProvisionedPollerConfig
,Dict
[str
,Any
],None
]) – Configuration for provisioned pollers that read from the event source. When specified, allows control over the minimum and maximum number of pollers that can be provisioned to process events from the source. Default: - no provisioned pollersreport_batch_item_failures (
Optional
[bool
]) – Allow functions to return partially successful responses for a batch of records. Default: falseretry_attempts (
Union
[int
,float
,None
]) – The maximum number of times to retry when the function returns an error. Set toundefined
if you want lambda to keep retrying infinitely or until the record expires. Valid Range: - Minimum value of 0 - Maximum value of 10000 Default: - infinite or until the record expires.source_access_configurations (
Optional
[Sequence
[Union
[SourceAccessConfiguration
,Dict
[str
,Any
]]]]) – Specific settings like the authentication protocol or the VPC components to secure access to your event source. Default: - nonestarting_position (
Optional
[StartingPosition
]) – The position in the DynamoDB, Kinesis or MSK stream where AWS Lambda should start reading. Default: - no starting positionstarting_position_timestamp (
Union
[int
,float
,None
]) – The time from which to start reading, in Unix time seconds. Default: - no timestampsupport_s3_on_failure_destination (
Optional
[bool
]) – Check if support S3 onfailure destination(ODF). Currently only MSK and self managed kafka event support S3 ODF Default: falsetumbling_window (
Optional
[Duration
]) – The size of the tumbling windows to group records sent to DynamoDB or Kinesis. Default: - None
- Return type:
- add_function_url(*, auth_type=None, cors=None, invoke_mode=None)
Adds a url to this lambda function.
- Parameters:
auth_type (
Optional
[FunctionUrlAuthType
]) – The type of authentication that your function URL uses. Default: FunctionUrlAuthType.AWS_IAMcors (
Union
[FunctionUrlCorsOptions
,Dict
[str
,Any
],None
]) – The cross-origin resource sharing (CORS) settings for your function URL. Default: - No CORS configuration.invoke_mode (
Optional
[InvokeMode
]) – The type of invocation mode that your Lambda function uses. Default: InvokeMode.BUFFERED
- Return type:
- add_layers(*layers)
Adds one or more Lambda Layers to this Lambda function.
- Parameters:
layers (
ILayerVersion
) – the layers to be added.- Throws:
if there are already 5 layers on this function, or the layer is incompatible with this function’s runtime.
- Return type:
None
- add_permission(id, *, principal, action=None, event_source_token=None, function_url_auth_type=None, organization_id=None, scope=None, source_account=None, source_arn=None)
Adds a permission to the Lambda resource policy.
- Parameters:
id (
str
) – The id for the permission construct.principal (
IPrincipal
) – The entity for which you are granting permission to invoke the Lambda function. This entity can be any of the following: - a valid AWS service principal, such ass3.amazonaws.com
orsns.amazonaws.com
- an AWS account ID for cross-account permissions. For example, you might want to allow a custom application in another AWS account to push events to Lambda by invoking your function. - an AWS organization principal to grant permissions to an entire organization. The principal can be an AccountPrincipal, an ArnPrincipal, a ServicePrincipal, or an OrganizationPrincipal.action (
Optional
[str
]) – The Lambda actions that you want to allow in this statement. For example, you can specify lambda:CreateFunction to specify a certain action, or use a wildcard (lambda:*
) to grant permission to all Lambda actions. For a list of actions, see Actions and Condition Context Keys for AWS Lambda in the IAM User Guide. Default: ‘lambda:InvokeFunction’event_source_token (
Optional
[str
]) – A unique token that must be supplied by the principal invoking the function. Default: - The caller would not need to present a token.function_url_auth_type (
Optional
[FunctionUrlAuthType
]) – The authType for the function URL that you are granting permissions for. Default: - No functionUrlAuthTypeorganization_id (
Optional
[str
]) – The organization you want to grant permissions to. Use this ONLY if you need to grant permissions to a subset of the organization. If you want to grant permissions to the entire organization, sending the organization principal through theprincipal
property will suffice. You can use this property to ensure that all source principals are owned by a specific organization. Default: - No organizationIdscope (
Optional
[Construct
]) – The scope to which the permission constructs be attached. The default is the Lambda function construct itself, but this would need to be different in cases such as cross-stack references where the Permissions would need to sit closer to the consumer of this permission (i.e., the caller). Default: - The instance of lambda.IFunctionsource_account (
Optional
[str
]) – The AWS account ID (without hyphens) of the source owner. For example, if you specify an S3 bucket in the SourceArn property, this value is the bucket owner’s account ID. You can use this property to ensure that all source principals are owned by a specific account.source_arn (
Optional
[str
]) – The ARN of a resource that is invoking your function. When granting Amazon Simple Storage Service (Amazon S3) permission to invoke your function, specify this property with the bucket ARN as its value. This ensures that events generated only from the specified bucket, not just any bucket from any AWS account that creates a mapping to your function, can invoke the function.
- See:
Permission for details.
- Return type:
None
- add_to_role_policy(statement)
Adds a statement to the IAM role assumed by the instance.
- Parameters:
statement (
PolicyStatement
)- Return type:
None
- apply_removal_policy(policy)
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.
The resource can be deleted (
RemovalPolicy.DESTROY
), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN
).- Parameters:
policy (
RemovalPolicy
)- Return type:
None
- configure_async_invoke(*, max_event_age=None, on_failure=None, on_success=None, retry_attempts=None)
Configures options for asynchronous invocation.
- Parameters:
max_event_age (
Optional
[Duration
]) – The maximum age of a request that Lambda sends to a function for processing. Minimum: 60 seconds Maximum: 6 hours Default: Duration.hours(6)on_failure (
Optional
[IDestination
]) – The destination for failed invocations. Default: - no destinationon_success (
Optional
[IDestination
]) – The destination for successful invocations. Default: - no destinationretry_attempts (
Union
[int
,float
,None
]) – The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
- Return type:
None
- consider_warning_on_invoke_function_permissions(scope, action)
A warning will be added to functions under the following conditions: - permissions that include
lambda:InvokeFunction
are added to the unqualified function.function.currentVersion is invoked before or after the permission is created.
This applies only to permissions on Lambda functions, not versions or aliases. This function is overridden as a noOp for QualifiedFunctionBase.
- Parameters:
scope (
Construct
)action (
str
)
- Return type:
None
- grant_invoke(grantee)
Grant the given identity permissions to invoke this Lambda.
- Parameters:
grantee (
IGrantable
)- Return type:
- grant_invoke_composite_principal(composite_principal)
Grant multiple principals the ability to invoke this Lambda via CompositePrincipal.
- Parameters:
composite_principal (
CompositePrincipal
)- Return type:
List
[Grant
]
- grant_invoke_latest_version(grantee)
Grant the given identity permissions to invoke the $LATEST version or unqualified version of this Lambda.
- Parameters:
grantee (
IGrantable
)- Return type:
- grant_invoke_url(grantee)
Grant the given identity permissions to invoke this Lambda Function URL.
- Parameters:
grantee (
IGrantable
)- Return type:
- grant_invoke_version(grantee, version)
Grant the given identity permissions to invoke the given version of this Lambda.
- Parameters:
grantee (
IGrantable
)version (
IVersion
)
- Return type:
- invalidate_version_based_on(x)
Mix additional information into the hash of the Version object.
The Lambda Function construct does its best to automatically create a new Version when anything about the Function changes (its code, its layers, any of the other properties).
However, you can sometimes source information from places that the CDK cannot look into, like the deploy-time values of SSM parameters. In those cases, the CDK would not force the creation of a new Version object when it actually should.
This method can be used to invalidate the current Version object. Pass in any string into this method, and make sure the string changes when you know a new Version needs to be created.
This method may be called more than once.
- Parameters:
x (
str
)- Return type:
None
- metric(metric_name, *, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Return the given named metric for this Function.
- Parameters:
metric_name (
str
)account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) – Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No labelperiod (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- metric_duration(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
How long execution of this Lambda takes.
Average over 5 minutes
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- metric_errors(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
How many invocations of this Lambda fail.
Sum over 5 minutes
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- metric_invocations(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
How often this Lambda is invoked.
Sum over 5 minutes
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- metric_throttles(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
How often this Lambda is throttled.
Sum over 5 minutes
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- to_string()
Returns a string representation of this construct.
- Return type:
str
Attributes
- architecture
The architecture of this Lambda Function (this is an optional attribute and defaults to X86_64).
- connections
Access the Connections object.
Will fail if not a VPC-enabled Lambda Function
- current_version
Returns a
lambda.Version
which represents the current version of this Lambda function. A new version will be created every time the function’s configuration changes.You can specify options for this version using the
currentVersionOptions
prop when initializing thelambda.Function
.
- dead_letter_queue
The DLQ (as queue) associated with this Lambda Function (this is an optional attribute).
- dead_letter_topic
The DLQ (as topic) associated with this Lambda Function (this is an optional attribute).
- env
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
- function_arn
ARN of this function.
- function_name
Name of this function.
- grant_principal
The principal this Lambda Function is running as.
- is_bound_to_vpc
Whether or not this Lambda function was bound to a VPC.
If this is is
false
, trying to access theconnections
object will fail.
- latest_version
The
$LATEST
version of this function.Note that this is reference to a non-specific AWS Lambda version, which means the function this version refers to can return different results in different invocations.
To obtain a reference to an explicit version which references the current function configuration, use
lambdaFunction.currentVersion
instead.
- log_group
The LogGroup where the Lambda function’s logs are made available.
If either
logRetention
is set or this property is called, a CloudFormation custom resource is added to the stack that pre-creates the log group as part of the stack deployment, if it already doesn’t exist, and sets the correct log retention period (never expire, by default).Further, if the log group already exists and the
logRetention
is not set, the custom resource will reset the log retention to never expire even if it was configured with a different value.
- node
The tree node.
- permissions_node
The construct node where permissions are attached.
- resource_arns_for_grant_invoke
The ARN(s) to put into the resource field of the generated IAM policy for grantInvoke().
- role
Execution role associated with this function.
- runtime
The runtime configured for this lambda.
- stack
The stack in which this resource is defined.
- timeout
The timeout configured for this lambda.
Static Methods
- classmethod classify_version_property(property_name, locked)
Record whether specific properties in the
AWS::Lambda::Function
resource should also be associated to the Version resource.See ‘currentVersion’ section in the module README for more details.
- Parameters:
property_name (
str
) – The property to classify.locked (
bool
) – whether the property should be associated to the version or not.
- Return type:
None
- classmethod from_function_arn(scope, id, function_arn)
Import a lambda function into the CDK using its ARN.
For
Function.addPermissions()
to work on this imported lambda, make sure that is in the same account and region as the stack you are importing it into.
- classmethod from_function_attributes(scope, id, *, function_arn, architecture=None, role=None, same_environment=None, security_group=None, skip_permissions=None)
Creates a Lambda function object which represents a function not defined within this stack.
For
Function.addPermissions()
to work on this imported lambda, set the sameEnvironment property to true if this imported lambda is in the same account and region as the stack you are importing it into.- Parameters:
scope (
Construct
) – The parent construct.id (
str
) – The name of the lambda construct.function_arn (
str
) – The ARN of the Lambda function. Format: arn::lambda:::function:architecture (
Optional
[Architecture
]) – The architecture of this Lambda Function (this is an optional attribute and defaults to X86_64). Default: - Architecture.X86_64role (
Optional
[IRole
]) – The IAM execution role associated with this function. If the role is not specified, any role-related operations will no-op.same_environment (
Optional
[bool
]) – Setting this property informs the CDK that the imported function is in the same environment as the stack. This affects certain behaviours such as, whether this function’s permission can be modified. When not configured, the CDK attempts to auto-determine this. For environment agnostic stacks, i.e., stacks where the account is not specified with theenv
property, this is determined to be false. Set this to property ONLY IF the imported function is in the same account as the stack it’s imported in. Default: - depends: true, if the Stack is configured with an explicitenv
(account and region) and the account is the same as this function. For environment-agnostic stacks this will default tofalse
.security_group (
Optional
[ISecurityGroup
]) – The security group of this Lambda, if in a VPC. This needs to be given in order to support allowing connections to this Lambda.skip_permissions (
Optional
[bool
]) – Setting this property informs the CDK that the imported function ALREADY HAS the necessary permissions for what you are trying to do. When not configured, the CDK attempts to auto-determine whether or not additional permissions are necessary on the function when grant APIs are used. If the CDK tried to add permissions on an imported lambda, it will fail. Set this property ONLY IF you are committing to manage the imported function’s permissions outside of CDK. You are acknowledging that your CDK code alone will have insufficient permissions to access the imported function. Default: false
- Return type:
- classmethod from_function_name(scope, id, function_name)
Import a lambda function into the CDK using its name.
- classmethod is_construct(x)
Checks if
x
is a construct.Use this method instead of
instanceof
to properly detectConstruct
instances, even when the construct library is symlinked.Explanation: in JavaScript, multiple copies of the
constructs
library on disk are seen as independent, completely different libraries. As a consequence, the classConstruct
in each copy of theconstructs
library is seen as a different class, and an instance of one class will not test asinstanceof
the other class.npm install
will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of theconstructs
library can be accidentally installed, andinstanceof
will behave unpredictably. It is safest to avoid usinginstanceof
, and using this type-testing method instead.- Parameters:
x (
Any
) – Any object.- Return type:
bool
- Returns:
true if
x
is an object created from a class which extendsConstruct
.
- classmethod is_owned_resource(construct)
Returns true if the construct was created by CDK, and false otherwise.
- Parameters:
construct (
IConstruct
)- Return type:
bool
- classmethod is_resource(construct)
Check whether the given construct is a Resource.
- Parameters:
construct (
IConstruct
)- Return type:
bool
- classmethod metric_all(metric_name, *, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Return the given named metric for this Lambda.
- Parameters:
metric_name (
str
)account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Return type:
- classmethod metric_all_concurrent_executions(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the number of concurrent executions across all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
max over 5 minutes
- Return type:
- classmethod metric_all_duration(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the Duration executing all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
average over 5 minutes
- Return type:
- classmethod metric_all_errors(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the number of Errors executing all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
sum over 5 minutes
- Return type:
- classmethod metric_all_invocations(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the number of invocations of all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
sum over 5 minutes
- Return type:
- classmethod metric_all_throttles(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the number of throttled invocations of all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
sum over 5 minutes
- Return type:
- classmethod metric_all_unreserved_concurrent_executions(*, account=None, color=None, dimensions_map=None, label=None, period=None, region=None, statistic=None, unit=None)
Metric for the number of unreserved concurrent executions across all Lambdas.
- Parameters:
account (
Optional
[str
]) – Account which this metric comes from. Default: - Deployment account.color (
Optional
[str
]) – The hex color code, prefixed with ‘#’ (e.g. ‘#00ff00’), to use when this metric is rendered on a graph. TheColor
class has a set of standard colors that can be used here. Default: - Automatic colordimensions_map (
Optional
[Mapping
[str
,str
]]) – Dimensions of the metric. Default: - No dimensions.label (
Optional
[str
]) –Label for this metric when added to a Graph in a Dashboard. You can use dynamic labels to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph’s legend. Default: - No label
period (
Optional
[Duration
]) – The period over which the specified statistic is applied. Default: Duration.minutes(5)region (
Optional
[str
]) – Region which this metric comes from. Default: - Deployment region.statistic (
Optional
[str
]) – What function to use for aggregating. Use theaws_cloudwatch.Stats
helper class to construct valid input strings. Can be one of the following: - “Minimum” | “min” - “Maximum” | “max” - “Average” | “avg” - “Sum” | “sum” - “SampleCount | “n” - “pNN.NN” - “tmNN.NN” | “tm(NN.NN%:NN.NN%)” - “iqm” - “wmNN.NN” | “wm(NN.NN%:NN.NN%)” - “tcNN.NN” | “tc(NN.NN%:NN.NN%)” - “tsNN.NN” | “ts(NN.NN%:NN.NN%)” Default: Averageunit (
Optional
[Unit
]) – Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
- Default:
max over 5 minutes
- Return type: