次の設定を使用して、Lambda で非同期の関数呼び出しのエラーと再試行をどのように処理するかを設定します。
-
MaximumEventAgeInSeconds: Lambda が非同期イベントキューにイベントを保持する最大時間を秒単位で設定します。この時間を過ぎると、イベントは破棄されます。
-
MaximumRetryAttempts: 関数がエラーを返したときに Lambda がイベントを再試行する回数の上限を設定します。
Lambda コンソールまたは AWS CLI を使用して、関数、バージョン、またはエイリアスのエラー処理を設定します。
エラー処理を設定するには
Lambda コンソールの [関数ページ]
を開きます。 -
関数を選択します。
-
[設定]、[Asynchronous invocation (非同期呼び出し)] の順に選択します。
-
[Asynchronous invocation (非同期呼び出し)] で、[Edit (編集)] を選択します。
-
以下を設定します。
-
[Maximum age of event] (イベントの最大有効期間) - Lambda が非同期イベントキューにイベントを保持する最大時間 (最大 6 時間)。
-
[Retry attempts] (再試行) - 関数がエラーを返したときに Lambda が再試行する回数 (0 〜 2)。
-
-
[Save] を選択します。
以下の出力が表示されます。
{ "LastModified": 1573686021.479, "FunctionArn": "arn:aws:lambda:us-east-1:123456789012:function:my-function:$LATEST", "MaximumRetryAttempts": 0, "MaximumEventAgeInSeconds": 3600, "DestinationConfig": { "OnSuccess": {}, "OnFailure": {} } }
呼び出しイベントが最大有効期間を超えるか、すべての再試行に失敗すると、Lambda はそのイベントを破棄します。破棄されたイベントのコピーを保持するには、失敗イベントの送信先を設定します。