華為云計(jì)算 云知識(shí) 設(shè)置函數(shù)異步配置信息UpdateFunctionAsyncInvokeConfig
設(shè)置函數(shù)異步配置信息UpdateFunctionAsyncInvokeConfig

 

功能介紹

設(shè)置函數(shù)異步配置信息。

調(diào)試

您可以在API Explorer中調(diào)試該接口,支持自動(dòng)認(rèn)證鑒權(quán)。API Explorer可以自動(dòng)生成SDK代碼示例,并提供SDK代碼示例調(diào)試功能。

URI

PUT /v2/{project_id}/fgs/functions/{function_urn}/async-invoke-config

表1 路徑參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

租戶項(xiàng)目 ID,獲取方式請(qǐng)參見獲取項(xiàng)目ID

function_urn

String

函數(shù)的URN,詳細(xì)解釋見FunctionGraph函數(shù)模型的描述。

請(qǐng)求參數(shù)

表2 請(qǐng)求Header參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

X-Auth-Token

String

用戶Token。

通過(guò)調(diào)用 IAM 服務(wù)獲取用戶Token接口獲?。憫?yīng)消息頭中X-Subject-Token的值)。

表3 請(qǐng)求Body參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

max_async_event_age_in_seconds

Integer

消息最大存活時(shí)長(zhǎng),取值范圍[1,86400],單位:秒,默認(rèn)值為3600。

最小值:1

最大值:86400

max_async_retry_attempts

Integer

異步調(diào)用失敗后的最大重試次數(shù),默認(rèn)值為1。取值范圍[0,3]。

最小值:0

最大值:3

destination_config

FuncAsyncDestinationConfig object

異步調(diào)用目標(biāo)。

enable_async_status_log

Boolean

開啟異步調(diào)用狀態(tài)持久化

表4 FuncAsyncDestinationConfig

參數(shù)

是否必選

參數(shù)類型

描述

on_success

FuncDestinationConfig object

當(dāng)函數(shù)執(zhí)行成功時(shí),函數(shù)計(jì)算將調(diào)用該配置對(duì)應(yīng)的目標(biāo)。

on_failure

FuncDestinationConfig object

當(dāng)函數(shù)執(zhí)行失?。ㄏ到y(tǒng)錯(cuò)誤或函數(shù)內(nèi)部錯(cuò)誤)時(shí),函數(shù)計(jì)算將調(diào)用該配置對(duì)應(yīng)的目標(biāo)。

表5 FuncDestinationConfig

參數(shù)

是否必選

參數(shù)類型

描述

destination

String

目標(biāo)類型。

  • OBS:通知到OBS服務(wù)。

  • SMN :通知到SMN服務(wù)。

  • DIS:通知到DIS服務(wù)。

  • FunctionGraph: 通知到函數(shù)服務(wù)。

枚舉值:

  • OBS

  • SMN

  • DIS

  • FunctionGraph

param

String

通知目標(biāo)服務(wù)對(duì)應(yīng)參數(shù),json字符串。

  • OBS:包含bucket桶,對(duì)象目錄前綴prefix,對(duì)象默認(rèn)expires過(guò)期時(shí)間[0~365]天,0默認(rèn)不過(guò)期。

  • SMN:包含smn 主題topic_urn。

  • DIS:包含DIS 通道名stream_name。

  • FunctionGraph:包含func_urn,函數(shù)urn

響應(yīng)參數(shù)

狀態(tài)碼: 200

表6 響應(yīng)Body參數(shù)

參數(shù)

參數(shù)類型

描述

func_urn

String

函數(shù)URN。

最小長(zhǎng)度:1

最大長(zhǎng)度:269

max_async_event_age_in_seconds

Integer

消息最大存活時(shí)長(zhǎng),取值范圍[60,86400]。單位:秒。

max_async_retry_attempts

Integer

異步調(diào)用失敗后的最大重試次數(shù),默認(rèn)值為3。取值范圍[0,8]。

destination_config

FuncAsyncDestinationConfig object

異步調(diào)用目標(biāo)。

created_time

String

異步調(diào)用配置的創(chuàng)建時(shí)間。

last_modified

String

異步調(diào)用配置的最后更改時(shí)間。

enable_async_status_log

Boolean

開啟異步調(diào)用狀態(tài)持久化

表7 FuncAsyncDestinationConfig

參數(shù)

參數(shù)類型

描述

on_success

FuncDestinationConfig object

當(dāng)函數(shù)執(zhí)行成功時(shí),函數(shù)計(jì)算將調(diào)用該配置對(duì)應(yīng)的目標(biāo)。

on_failure

FuncDestinationConfig object

當(dāng)函數(shù)執(zhí)行失?。ㄏ到y(tǒng)錯(cuò)誤或函數(shù)內(nèi)部錯(cuò)誤)時(shí),函數(shù)計(jì)算將調(diào)用該配置對(duì)應(yīng)的目標(biāo)。

表8 FuncDestinationConfig

參數(shù)

參數(shù)類型

描述

destination

String

目標(biāo)類型。

  • OBS:通知到OBS服務(wù)。

  • SMN:通知到SMN服務(wù)。

  • DIS:通知到DIS服務(wù)。

  • FunctionGraph: 通知到函數(shù)服務(wù)。

枚舉值:

  • OBS

  • SMN

  • DIS

  • FunctionGraph

param

String

通知目標(biāo)服務(wù)對(duì)應(yīng)參數(shù),json字符串。

  • OBS:包含bucket桶,對(duì)象目錄前綴prefix,對(duì)象默認(rèn)expires過(guò)期時(shí)間[0~365]天,0默認(rèn)不過(guò)期。

  • SMN:包含smn 主題topic_urn。

  • DIS:包含DIS 通道名stream_name。

  • FunctionGraph:包含func_urn,函數(shù)urn

狀態(tài)碼: 400

表9 響應(yīng)Body參數(shù)

參數(shù)

參數(shù)類型

描述

error_code

String

錯(cuò)誤碼

error_msg

String

錯(cuò)誤信息

狀態(tài)碼: 404

表10 響應(yīng)Body參數(shù)

參數(shù)

參數(shù)類型

描述

error_code

String

錯(cuò)誤碼

error_msg

String

錯(cuò)誤信息

請(qǐng)求示例

設(shè)置函數(shù)異步配置信息,消息最大存活時(shí)間設(shè)置為10s,最大重試次數(shù)為3次,開啟異步調(diào)用狀態(tài)持久化。

PUT /v2/{project_id}/fgs/functions/{function_urn}/async-invoke-config

{
  "max_async_event_age_in_seconds" : 10,
  "max_async_retry_attempts" : 3,
  "enable_async_status_log" : true
}

響應(yīng)示例

狀態(tài)碼: 200

Ok

{
  "func_urn" : "urn:fss:xxxxxxxxx:7aad83af3e8d42e99ac194xxxxxxxxxx:function:default:test:latest",
  "max_async_event_age_in_seconds" : 60,
  "max_async_retry_attempts" : 1,
  "destination_config" : {
    "on_success" : {
      "destination" : "FunctionGraph",
      "param" : "{\"func_urn\":\"urn:fss:{region}:5691ba790e2b46ceb38316xxxxxxxxxx:function:default:testPython:latest\"}"
    },
    "on_failure" : {
      "destination" : "FunctionGraph",
      "param" : "{\"func_urn\":\"urn:fss:{region}:5691ba790e2b46ceb38316xxxxxxxxxx:function:default:testPython:latest\"}"
    }
  },
  "created_time" : "2021-03-04T14:50:02+08:00",
  "last_modified" : "2021-03-04 14:50:02"
}

狀態(tài)碼

狀態(tài)碼

描述

200

Ok

400

Bad Request

404

Not Found

錯(cuò)誤碼

請(qǐng)參見錯(cuò)誤碼。