AWS Lambda
Guia do desenvolvedor

Erros de função do AWS Lambda no PowerShell

Se a sua função do Lambda tiver um erro de finalização, o AWS Lambda reconhecerá a falha, serializará as informações de erro em JSON e a retornará.

Considere a seguinte instrução de exemplo de script do PowerShell:

throw 'The Account is not found'

Quando você invoca essa função do Lambda, ela lança um erro de finalização, e o AWS Lambda retorna a seguinte mensagem de erro:

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

Observe que errorType é RuntimeException, que é a exceção padrão lançada pelo PowerShell. Você pode usar tipos de erros personalizados lançando o erro da seguinte maneira:

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

A mensagem de erro é serializada com errorType definido como AccountNotFound:

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

Se você não precisar de uma mensagem de erro, poderá lançar uma string no formato de um código de erro. O formato do código de erro requer que a string comece com um caractere e apenas letras e dígitos depois, sem espaços ou símbolos.

Por exemplo, se sua função do Lambda contém o seguinte:

throw 'AccountNotFound'

O erro é serializado desta maneira:

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

Tratamento de erros de funções

Você pode usar um errorType personalizado na sua função do Lambda e manipular erros de função diretamente (Repetir ou Capturar0 em uma máquina de estado do AWS Step Functions. Para obter mais informações, consulte Tratamento de condições de erro usando uma máquina de estado.

O tratamento de erros personalizado facilita a criação de aplicativos sem servidor. Esse recurso integra-se a todas as linguagens com suporte pelo Lambda Modelo de programação. Isso permite criar seus aplicativos na linguagem de programação de sua escolha, misturando e combinando ao longo do processo.

Para saber mais sobre a criação de seus próprios aplicativos sem servidor usando o AWS Step Functions e o AWS Lambda, consulte AWS Step Functions.