本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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 的詳細資訊,請參閱下列說明: