数据工坊 DWR-自定义函数开发规范:函数输入参数

时间:2024-01-04 09:39:58

函数输入参数

工作流执行自定义函数时,函数输入参数的JSON格式的结构体和环境变量的定义如下:
表1 函数输入的JSON格式体

名称

是否必选

参数类型

说明

execution_name

String

工作流实例名称。

graph_name

String

工作流名称。

Records

Array

工作流触发的事件源事件消息。

inputs

Map[String]String

用户可修改参数列表,可以为空。

dynamic_source

Map

函数执行必须的参数,可用于传入调用的服务。

表2 函数的环境变量

名称

是否必选

参数类型

说明

region

String

当前区域名称。

函数输入的JSON示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
{
  "execution_name": "84a3dd2bd67f43aa9b98cdd74604ca68",//工作流实例名称
  "graph_name": "test_workflow",//工作流名称
  "Records": [
    {
      "eventName": "ObjectCreated:Put",//触发事件通知的事件名
      "eventRegion": "cn-north-4",//事件所在的region
      "eventSource": "OBS",//消息源,固定为"OBS"
      "eventTime": "2021-12-23T14:50:22.957Z",//事件时间,格式为ISO-8601,示例:2020-07-10T09:24:11.418Z
      "eventVersion": "3.0",//版本号,目前为"3.0"
      "obs": {
        "Version": "1.0",
        "bucket": {
          "bucket": "examplebucket",//桶名
          "name": "examplebucket",//桶名
          "ownerIdentity": {
            "ID": "08b4efe0fc00d3ce0f17c01b948f6e80"//桶拥有者的账号ID
          }
        },
        "configurationId":"test-trigger",//此事件匹配的OBS中事件触发器的名称
        "object": {
          "eTag": "fc85a07cff68977bf5b2108e7436ca2d",//对象的etag
          "key": "exampleobject.docx",//对象名
          "oldpsxpth": "",//文件在并行文件系统中rename前的路径
          "sequencer": "1",//确定某个特定对象事件顺序的标识
          "size": "524298",//对象的大小
          "versionId": "G001017DE60E176D0000401106696610null"//对象的版本ID
        }
      },
      "requestParameters": {
        "sourceIPAddress": "x.x.x.x"//请求的源IP
      },
      "responseElements": {
        "x-obs-id-2": "",//帮助定位问题的特殊符号
        "x-obs-request-id": "84a3dd2bd67f43aa9b98cdd74604ca68"//请求对应的requestid
      },
      "userIdentity": {
        "ID": "08b4efe0fc00d3ce0f17c01b948f6e80"//触发事件的用户对应的计费ID
      }
    }
  ],
  "inputs": {  //执行工作流的输入参数
    "parametername": "parametervalue",
    "parametername": "parametervalue" 
	},
  "dynamic_source": { //执行自定义函数的输入参数
    "parametername": "parametervalue",
    "parametername": "parametervalue"
  }
}
support.huaweicloud.com/usermanual-dwr/dwr_03_0008.html