更新时间:2024-03-14 GMT+08:00

设置函数异步配置信息

功能介绍

设置函数异步配置信息。

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户项目 ID,获取方式请参见获取项目ID

function_urn

String

函数的URN,详细解释见FunctionGraph函数模型的描述。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

Content-Type

String

消息体的类型(格式)

表3 请求Body参数

参数

是否必选

参数类型

描述

max_async_event_age_in_seconds

Integer

消息最大存活时长,取值范围[1,86400],单位:秒,默认值为3600。

最小值:1

最大值:86400

max_async_retry_attempts

Integer

异步调用失败后的最大重试次数,默认值为1。取值范围[0,3]。

最小值:0

最大值:3

destination_config

FuncAsyncDestinationConfig object

异步调用目标。

enable_async_status_log

Boolean

开启异步调用状态持久化

表4 FuncAsyncDestinationConfig

参数

是否必选

参数类型

描述

on_success

FuncDestinationConfig object

当函数执行成功时,函数计算将调用该配置对应的目标。

on_failure

FuncDestinationConfig object

当函数执行失败(系统错误或函数内部错误)时,函数计算将调用该配置对应的目标。

表5 FuncDestinationConfig

参数

是否必选

参数类型

描述

destination

String

目标类型。

  • OBS:通知到OBS服务。

  • SMN:通知到SMN服务。

  • DIS:通知到DIS服务。

  • FunctionGraph: 通知到函数服务。

枚举值:

  • OBS

  • SMN

  • DIS

  • FunctionGraph

param

String

通知目标服务对应参数,json字符串。

  • OBS:包含bucket桶,对象目录前缀prefix,对象默认expires过期时间[0~365]天,0默认不过期。

  • SMN:包含smn 主题topic_urn。

  • DIS:包含DIS 通道名stream_name。

  • FunctionGraph:包含func_urn,函数urn

响应参数

状态码: 200

表6 响应Body参数

参数

参数类型

描述

func_urn

String

函数URN。

最小长度:1

最大长度:269

max_async_event_age_in_seconds

Integer

消息最大存活时长,取值范围[60,86400]。单位:秒。

max_async_retry_attempts

Integer

异步调用失败后的最大重试次数,默认值为3。取值范围[0,8]。

destination_config

FuncAsyncDestinationConfig object

异步调用目标。

created_time

String

异步调用配置的创建时间。

last_modified

String

异步调用配置的最后更改时间。

enable_async_status_log

Boolean

开启异步调用状态持久化

表7 FuncAsyncDestinationConfig

参数

参数类型

描述

on_success

FuncDestinationConfig object

当函数执行成功时,函数计算将调用该配置对应的目标。

on_failure

FuncDestinationConfig object

当函数执行失败(系统错误或函数内部错误)时,函数计算将调用该配置对应的目标。

表8 FuncDestinationConfig

参数

参数类型

描述

destination

String

目标类型。

  • OBS:通知到OBS服务。

  • SMN:通知到SMN服务。

  • DIS:通知到DIS服务。

  • FunctionGraph: 通知到函数服务。

枚举值:

  • OBS

  • SMN

  • DIS

  • FunctionGraph

param

String

通知目标服务对应参数,json字符串。

  • OBS:包含bucket桶,对象目录前缀prefix,对象默认expires过期时间[0~365]天,0默认不过期。

  • SMN:包含smn 主题topic_urn。

  • DIS:包含DIS 通道名stream_name。

  • FunctionGraph:包含func_urn,函数urn

状态码: 400

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 404

表10 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

请求示例

设置函数异步配置信息,消息最大存活时间设置为10s,最大重试次数为3次,开启异步调用状态持久化。

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
}

响应示例

状态码: 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"
}

状态码

状态码

描述

200

Ok

400

Bad Request

404

Not Found

错误码

请参见错误码