本文介绍事件流中事件目标的元数据参数。
请求参数
| 参数 | 类型 | 是否必选 | 描述 |
|---|---|---|---|
eventStreamName | String | 是 | 事件流名。 |
streamSource | Object | 是 | 事件源项。详见事件源参数。 |
| desc | String | 否 | 事件流描述。 |
filterPattern | String | 是 | 事件过滤项。 |
transform | Object | 是 | 事件转换项。 |
streamSink | Object | 是 | 事件目标项。详见表StreamSink,更多信息请参考下文事件目标的格式。 |
表 StreamSink
| 参数 | 类型 | 是否必选 | 描述 |
|---|---|---|---|
type | String | 是 | 事件目标类型。 |
params | Array of Objects | 是 | 事件目标参数,详见表Params。 |
表 Params
| 参数 | 是否必填 | 参数类型 | 说明 |
|---|---|---|---|
| resourceKey | 是 | String | 事件目标参数名。 |
| value | 是 | String | 事件目标参数值。 |
| form | 是 | String | 事件目标参数格式。 |
| template | 否 | String | 事件目标参数模板样式。 |
分布式消息服务Kafka
当事件目标选择分布式消息服务Kafka时,事件目标的type值为kafka,params中的resourceKey字段中含义如下表所示。
| resourceKey | 是否必传 | form | value | template |
|---|---|---|---|---|
| instanceId | 是 |
| 分布式消息服务Kafka实例Id。 说明 实例Id可在分布式消息服务Kafka管理控制台-实例详情页获取。 | 无 |
| topic | 是 |
| Kafka主题。 | 无 |
| value | 是 |
| 消息体。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| key | 是 |
| 消息键值。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
事件目标部分的参数示例如下:
{
"type": "kafka",
"params": [
{
"resourceKey": "instanceId",
"value": "356b3496b87xxxxxxxxfe7deef7fe35",
"form": "CONSTANT"
},
{
"resourceKey": "topic",
"value": "test2",
"form": "CONSTANT"
},
{
"resourceKey": "value",
"value": "",
"form": "ORIGINAL"
},
{
"resourceKey": "key",
"value": "",
"form": "EMPTY"
}
]
}分布式消息服务RocketMQ
当事件目标选择分布式消息服务RocketMQ时,事件目标的type值为rocketmq,params中的resourceKey字段中含义如下表所示。
| resourceKey | 是否必传 | form | value | template |
|---|---|---|---|---|
| instanceId | 是 |
| 分布式消息服务RocketMQ实例ID。 说明 实例Id可在分布式消息服务RocketMQ管理控制台-实例详情页获取。 | 无 |
| topic | 是 |
| RocketMQ主题。 | 无 |
| body | 是 |
| 消息体。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| keys | 是 |
| 消息索引。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| properties | 是 |
| 消息自定义属性。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| tags | 是 |
| 消息标签。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
请求示例:
{
"type": "rocketmq",
"params": [
{
"resourceKey": "instanceId",
"value": "89ceb110331e4c968499744c2ccbdbcc",
"form": "CONSTANT"
},
{
"resourceKey": "topic",
"value": "TopicA",
"form": "CONSTANT"
},
{
"resourceKey": "body",
"value": "",
"form": "ORIGINAL"
},
{
"resourceKey": "properties",
"value": "",
"form": "EMPTY"
},
{
"resourceKey": "keys",
"value": "",
"form": "EMPTY"
},
{
"resourceKey": "tags",
"value": "",
"form": "EMPTY"
}
]
}分布式消息服务RabbitMQ
当事件目标选择分布式消息服务RabbitMQ时,事件目标的type值为rabbitmq,params中的resourceKey字段中含义如下表所示。
| resourceKey | 是否必传 | form | value | template |
|---|---|---|---|---|
| instanceId | 是 |
| 分布式消息服务RabbitMQ实例ID。 说明 实例Id可在分布式消息服务RabbitMQ管理控制台-实例详情页获取。 | 无 |
| vhost | 是 |
| 无 | |
| targetType | 是 |
| 目标类型。
| 无 |
| exchange | 否,但当targetType选择exchange时必填 |
| Exchange模式。 | 无 |
| queueName | 否,但当targetType选择queue时必填 |
| Queue模式。 | 无 |
| routeKey | 否,但当targetType选择exchange时必填 |
| 消息路由规则。 | 无 |
| body | 是 |
| 消息体。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| messageId | 是 |
| 消息Id,若为空则客户端自动生成。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
| properties | 是 |
| 消息属性。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
请求示例:
示例一:当targetType为queue时:
{
"type": "rabbitmq",
"params": [
{
"resourceKey": "instanceId",
"value": "e8c05d2c9f44xxxxxxx373c6737df98b",
"form": "CONSTANT"
},
{
"resourceKey": "vhost",
"value": "/",
"form": "CONSTANT"
},
{
"resourceKey": "targetType",
"value": "queue",
"form": "CONSTANT"
},
{
"resourceKey": "queueName",
"value": "test",
"form": "CONSTANT"
},
{
"resourceKey": "body",
"value": "",
"form": "ORIGINAL"
},
{
"resourceKey": "properties",
"value": "",
"form": "EMPTY"
},
{
"resourceKey": "messageId",
"value": "",
"form": "EMPTY"
}
]
}示例二:当targetType为exchange时:
{
"type": "rabbitmq",
"params": [
{
"resourceKey": "instanceId",
"value": "e8c05d2c9xxxxxxx373c6737df98b",
"form": "CONSTANT"
},
{
"resourceKey": "vhost",
"value": "/",
"form": "CONSTANT"
},
{
"resourceKey": "targetType",
"value": "exchange",
"form": "CONSTANT"
},
{
"resourceKey": "exchangeName",
"value": "11",
"form": "CONSTANT"
},
{
"resourceKey": "body",
"value": "",
"form": "ORIGINAL"
},
{
"resourceKey": "properties",
"value": "",
"form": "EMPTY"
},
{
"resourceKey": "messageId",
"value": "",
"form": "EMPTY"
},
{
"resourceKey": "routeKey",
"value": "$.data",
"form": "JSONPATH"
}
]
}函数计算
当事件目标选择函数计算时,事件目标的type值为faas,params中的resourceKey字段中含义如下表所示。
| resourceKey | 是否必传 | form | value | template |
|---|---|---|---|---|
| functionName | 是 |
| 函数名。 | 无 |
| functionVersion | 否,当不传functionAlias时此参数必传 |
| 函数版本。 | 无 |
| functionAlias | 否,当不传functionVersion时此参数必传 |
| 函数别名。 | 无 |
| invokeType | 是 |
| 调用方式。
| 无 |
| value | 否 |
| 函数的消息体内容。不传时默认为全部事件。 | 如果form选择TEMPLATE,则在此处配置模板。详见事件内容转换。 |
请求示例:
{
"type": "faas",
"params": [
{
"resourceKey": "functionName",
"value": "testgo4",
"form": "CONSTANT"
},
{
"resourceKey": "functionVersion",
"value": "LATEST",
"form": "CONSTANT"
},
{
"resourceKey": "invokeType",
"value": "synchronous",
"form": "CONSTANT"
},
{
"resourceKey": "value",
"value": "",
"form": "ORIGINAL"
}
]
}