Lambda サービスの例外を処理する - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Lambda サービスの例外を処理する

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

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

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

Lambda での未処理のエラーは、エラー出力で Lambda.Unknown として報告されます。これには、メモリ不足エラーと関数のタイムアウトが含まれます。Lambda.UnknownStates.ALL、または States.TaskFailed を一致させて、こういったエラーに処理できます。Lambda が最大呼び出し数に達すると、エラーは Lambda.TooManyRequestsException となります。Lambda 関数のエラーの詳細については、「AWS Lambda デベロッパーガイド」の「エラー処理と自動再試行」を参照してください。

詳細については、以下を参照してください。