AWS::Lambda::EventInvokeConfig - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::Lambda::EventInvokeConfig

AWS::Lambda::EventInvokeConfig 资源配置版本或别名的异步调用选项。

默认情况下,如果函数返回错误,Lambda 将重试两次异步调用。它将事件在队列中保留最多 6 个小时。如果事件未完成所有处理尝试,或者在异步调用队列中保留太长的时间,Lambda 将丢弃该事件。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::Lambda::EventInvokeConfig", "Properties" : { "DestinationConfig" : DestinationConfig, "FunctionName" : String, "MaximumEventAgeInSeconds" : Integer, "MaximumRetryAttempts" : Integer, "Qualifier" : String } }

YAML

Type: AWS::Lambda::EventInvokeConfig Properties: DestinationConfig: DestinationConfig FunctionName: String MaximumEventAgeInSeconds: Integer MaximumRetryAttempts: Integer Qualifier: String

属性

DestinationConfig

在事件发送到函数以进行处理后的目标。

Destinations

  • Function - Lambda 函数的 Amazon 资源名称 (ARN)。

  • Queue - SQS 队列的 ARN。

  • Topic - SNS 主题的 ARN。

  • Event Bus - Amazon EventBridge 事件总线的 ARN。

必需:否

类型DestinationConfig

Update requires: No interruption

FunctionName

Lambda 函数的名称。

最小值1

最大值64

模式([a-zA-Z0-9-_]+)

必需:是

类型:字符串

Update requires: Replacement

MaximumEventAgeInSeconds

Lambda 发送到函数以进行处理的请求的最长期限。

必需:否

类型:整数

最低60

最高21600

Update requires: No interruption

MaximumRetryAttempts

在函数返回错误时重试的最大次数。

必需:否

类型:整数

最低0

最高2

Update requires: No interruption

Qualifier

版本或别名的标识符。

  • Version - 版本号。

  • Alias - 别名。

  • Latest - 要指定未发布的版本,请使用 $LATEST

必需:是

类型:字符串

最低1

最高128

模式(|[a-zA-Z0-9$_-]+)

Update requires: Replacement

返回值

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns a unique identifier for this resource.

示例

异步调用配置

函数版本的错误处理和目标配置。包含 Node.js 函数和版本。

YAML

Resources: function: Type: AWS::Lambda::Function Properties: Handler: index.handler Role: arn:aws:iam::123456789012:role/lambda-role Code: ZipFile: | exports.handler = async (event) => { console.log(JSON.stringify(event, null, 2)); const response = { statusCode: 200, body: JSON.stringify('Hello from Lambda!'), }; return response; }; Runtime: nodejs12.x TracingConfig: Mode: Active version: Type: AWS::Lambda::Version Properties: FunctionName: !Ref function asyncconfig: Type: AWS::Lambda::EventInvokeConfig Properties: DestinationConfig: OnFailure: Destination: arn:aws:sqs:us-east-2:123456789012:dlq OnSuccess: Destination: arn:aws:sqs:us-east-2:123456789012:dlq FunctionName: !Ref function MaximumEventAgeInSeconds: 300 MaximumRetryAttempts: 1 Qualifier: !GetAtt version.Version