PutFunctionEventInvokeConfig - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

PutFunctionEventInvokeConfig

對函數、版本或別名設定非同步調用選項。如果函數、版本或別名的組態已經存在,此操作會覆寫它。如果排除任何設定,則會移除這些設定。若要設定一個選項而不影響其他選項的現有設定,請使用 UpdateFunctionEventInvokeConfig

根據預設,如果函數傳回錯誤,Lambda 會重試兩次非同步調用。Lambda 會將事件保留在佇列中最多 6 小時。當事件的所有處理嘗試都失敗,或是處於非同步調用佇列中過久,Lambda 就會予以捨棄。若要保留已捨棄的事件,使用 UpdateFunctionConfiguration 設定無效字母佇列。

若要將調用記錄傳送到佇列、主題、函數或事件匯流排,請指定目的地。您可以為成功調用 (on-success) 和所有處理嘗試均失敗 (on-failure) 的事件設定不同的目的地。除了無效字母佇列外,您還可以設定目的地。

請求語法

PUT /2019-09-25/functions/FunctionName/event-invoke-config?Qualifier=Qualifier HTTP/1.1 Content-type: application/json { "DestinationConfig": { "OnFailure": { "Destination": "string" }, "OnSuccess": { "Destination": "string" } }, "MaximumEventAgeInSeconds": number, "MaximumRetryAttempts": number }

URI 請求參數

請求會使用下列 URI 參數。

FunctionName

Lambda 函數的名稱,版本或別名。

名稱格式
  • 函數名稱 - my-function (僅名稱),my-function:v1 (具備別名)。

  • 函數 ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function

  • 部分 ARN - 123456789012:function:my-function

您可以將版本號碼或別名附加到任何格式。長度限制條件僅會套用到完整的 ARN。若您僅指定函數名稱,則其長度限制為 64 個字元。

長度限制:長度下限為 1。長度上限為 140。

模式:(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?

必要:是

Qualifier

版本號或別名名稱。

長度限制:長度下限為 1。長度上限為 128。

模式:(|[a-zA-Z0-9$_-]+)

請求主體

請求接受採用 JSON 格式的下列資料。

DestinationConfig

事件在傳送至函數以進行處理後的目標。

目的地
  • 函數 - Lambda 函數的 Amazon Resource Name (ARN)。

  • 佇列 - 標準 SQS 佇列的 ARN。

  • 主題 - 標準 SNS 主題的 ARN。

  • 活動總線-Amazon EventBridge 活動總線的 ARN。

類型:DestinationConfig 物件

必要:否

MaximumEventAgeInSeconds

Lambda 傳送至函數以進行處理的請求時間上限。

類型:整數

有效範圍:最小值為 60。最大值為 21600。

必要:否

MaximumRetryAttempts

當函數傳回錯誤時,重試的次數上限。

類型:整數

有效範圍:最小值為 0。最大值為 2。

必要:否

回應語法

HTTP/1.1 200 Content-type: application/json { "DestinationConfig": { "OnFailure": { "Destination": "string" }, "OnSuccess": { "Destination": "string" } }, "FunctionArn": "string", "LastModified": number, "MaximumEventAgeInSeconds": number, "MaximumRetryAttempts": number }

回應元素

如果動作成功,則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

DestinationConfig

事件在傳送至函數以進行處理後的目標。

目的地
  • 函數 - Lambda 函數的 Amazon Resource Name (ARN)。

  • 佇列 - 標準 SQS 佇列的 ARN。

  • 主題 - 標準 SNS 主題的 ARN。

  • 活動總線-Amazon EventBridge 活動總線的 ARN。

類型:DestinationConfig 物件

FunctionArn

函數的 Amazon Resource Name (ARN)。

類型:String

模式:arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?

LastModified

上次更新組態的日期和時間 (以 Unix 時間秒為單位)。

類型:Timestamp

MaximumEventAgeInSeconds

Lambda 傳送至函數以進行處理的請求時間上限。

類型:整數

有效範圍:最小值為 60。最大值為 21600。

MaximumRetryAttempts

當函數傳回錯誤時,重試的次數上限。

類型:整數

有效範圍:最小值為 0。最大值為 2。

錯誤

如需所有動作常見錯誤的資訊,請參閱常見錯誤

InvalidParameterValueException

請求中的其中一個參數無效。

HTTP 狀態碼:400

ResourceConflictException

資源已存在,或另一個操作正在進行中。

HTTP 狀態碼:409

ResourceNotFoundException

請求中指定的資源不存在。

HTTP 狀態碼:404

ServiceException

AWS Lambda 服務發生內部錯誤。

HTTP 狀態碼:500

TooManyRequestsException

超出請求輸送量限制。如需詳細資訊,請參閱 Lambda 配額

HTTP 狀態碼:429

另請參閱

如需在語言特定的 AWS 開發套件之一中使用此 API 的詳細資訊,請參閱下列說明: