AWS Lambda
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

PowerShell 中的 AWS Lambda 函数错误

如果 Lambda 函数出现终止错误,AWS Lambda 会识别到失败并将错误信息序列化为 JSON 返回。

请考虑以下 PowerShell 脚本示例语句:

throw 'The Account is not found'

在调用此 Lambda 函数时,它将引发终止错误,并且 AWS Lambda 返回以下错误消息:

{ "errorMessage": "The Account is not found", "errorType": "RuntimeException" }

注意 errorTypeRuntimeException,这是 PowerShell 引发的默认异常。您可以通过引发错误来使用自定义错误类型,如下所示:

throw @{'Exception'='AccountNotFound';'Message'='The Account is not found'}

通过将 errorType 设置为 AccountNotFound,错误消息将进行序列化:

{ "errorMessage": "The Account is not found", "errorType": "AccountNotFound" }

如果您不需要错误消息,您可以以错误代码的格式引发字符串。错误代码格式要求字符串以字符开头,且后面只能包含字母和数字,不含空格或符号。

例如,如果您的 Lambda 函数包含以下内容:

throw 'AccountNotFound'

错误将进行序列化,如下所示:

{ "errorMessage": "AccountNotFound", "errorType": "AccountNotFound" }

函数错误处理

您可以在 Lambda 函数中使用自定义错误类型,并直接在 AWS Step Functions 状态机中处理函数错误(重试或捕获)。有关更多信息,请参阅使用状态机处理错误情况

自定义错误处理机制使创建无服务器应用程序变得更加容易。此功能可与 Lambda 编程模型 支持的所有语言集成。因此,您可以使用您选择的编程语言设计应用程序,随时可以进行混合搭配。

要进一步了解如何使用 AWS Step Functions 和 AWS Lambda 创建您自己的无服务器应用程序,请参阅 AWS Step Functions

本页内容: