AWS Step Functions
開発者ガイド

Lambda サービス例外の処理

AWS Lambda では、サービスエラーが発生することがあります。この場合に Lambda を呼び出すと、ServiceExceptionAWSLambdaExceptionSdkClientException などの 500 エラーが生じます。ベストプラクティスとしては、Lambda 関数を呼び出す Retry、あるいはエラーを Catch するために、ステートマシンでのこのような例外を事前に処理します。

Lambda エラーは、Lambda.ErrorName として報告されます。Lambda サービス例外エラーを再試行するには、次の Retry コードを使用します。

"Retry": [ { "ErrorEquals": [ "Lambda.ServiceException", "Lambda.AWSLambdaException", "Lambda.SdkClientException"], "IntervalSeconds": 2, "MaxAttempts": 6, "BackoffRate": 2 } ]

注記

Lambda で処理されないエラーは、エラー出力で Lambda.Unknown と表示されます。これには、メモリ不足エラー、関数のタイムアウト、同時 Lambda 呼び出しの制限などがあります。これらのエラーを処理するには、Lambda.UnknownStates.ALL、または States.TaskFailed で一致できます。Lambda が呼び出しの制限に達した場合のエラーは Lambda.TooManyRequestsException になります。Lambda の Handled および Unhandled エラーの詳細については、AWS Lambda Developer Guideの「FunctionError」を参照してください。

詳細については、以下のトピックを参照してください。