调用CreateEventStreaming接口创建一个事件流。
URL
/eventstreaming/createEventStreaming
注意事项
- 在同一事件流中,参数SourceMNSParameters、SourceRocketMQParameters、SourceRabbitMQParameters和SourceSLSParameters同时只能配置一个。
- 在同一事件流中,参数SinkMNSParameters、SinkRocketMQParameters、SinkRabbitMQParameters和SinkSLSParameters同时只能配置一个。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
EventStreamingName | String | 是 | myeventstreaming | 事件流的名称。 |
Description | String | 是 | rocketmq2mns | 事件流的描述。 |
Source | Object | 是 | SourceRocketMQParameters | 事件提供方。 |
SourceMNSParameters | Object | 否 | 事件提供方为消息服务MNS。具体信息,请参见请求参数SourceMNSParameters。 | |
SourceRocketMQParameters | Object | 否 | 事件提供方为消息队列RocketMQ版。具体信息,请参见请求参数SourceRocketMQParameters。 | |
SourceRabbitMQParameters | Object | 否 | 事件提供方为消息队列RabbitMQ版。具体信息,请参见请求参数SourceRabbitMQParameters。 | |
SourceSLSParameters | Object | 否 | 事件提供方为日志服务SLS。具体信息,请参见请求参数SinkSLSParameters。 | |
FilterPattern | String | 否 | 无 | 事件过滤规则,如果不指定表示匹配全部事件。 |
Sink | Object | 是 | SinkMNSParameters | 事件目标。 |
SinkMNSParameters | Object | 否 | 事件目标为消息服务MNS。具体信息,请参见请求参数SinkMNSParameters。 | |
SinkRocketMQParameters | Object | 否 | 事件目标为消息队列RocketMQ版。具体信息,请参见请求参数SinkRocketMQParameters。 | |
SinkRabbitMQParameters | Object | 否 | 事件目标为消息队列RabbitMQ版。具体信息,请参见请求参数SinkRabbitMQParameters。 | |
SinkSLSParameters | Object | 否 | 事件目标为日志服务SLS。具体信息,请参见请求参数SinkSLSParameters。 | |
RunOptions | Object | 否 | 运行环境参数。 | |
RetryStrategy | String | 是 | BACKOFF_RETRY | 事件推送失败时的重试策略。取值说明如下:
默认值:BACKOFF_RETRY。 |
ErrorsTolerance | String | 是 | ALL | 容错策略,即发生错误时是否选择容错。取值说明如下:
默认值:ALL。 |
DeadLetterQueue | Object | 是 | 是否启用死信队列。默认不启用死信队列,超过重试策略后的消息将被丢弃。 | |
Arn | String | 否 | acs:mq:cn-chengdu:164901546557****:/instances/MQ_INST_164901546557****_BXxk0KXx/topic/Mytopic | 消息队列RabbitMQ版实例的Topic在阿里云上的统一资源标识(ARN)。 |
请求参数SourceMNSParameters
如果配置了参数SourceMNSParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
QueueName | String | 是 | demo | 消息服务MNS的Queue的名称。 |
IsBase64Decode | String | 是 | true | 是否开启Base64编码。默认为true。 |
请求参数SourceRocketMQParameters
如果配置了参数SourceRocketMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
RegionId | String | 是 | cn-hangzhou | 消息队列RocketMQ版的实例所属地域。 |
InstanceId | String | 是 | MQ_INST_164901546557****_BAAN**** | 消息队列RocketMQ版的实例ID。更多信息,请参见使用限制。 |
Topic | String | 是 | mytopic | 消息队列RocketMQ版实例的Topic名称。更多信息,请参见使用限制。 |
Tag | String | 否 | test | 消息的过滤标签。 |
Offset | String | 否 | CONSUME_FROM_TIMESTAMP | 消息的消费位点。取值说明如下:
默认值:CONSUME_FROM_LAST_OFFSET。 |
Timestamp | Long | 否 | 1636597951964 | 时间戳。仅当参数Offset取值为CONSUME_FROM_TIMESTAMP时,该参数有效。 |
GroupID | String | 是 | GID_group1 | 消息队列RocketMQ版的Group ID。 |
请求参数SourceRabbitMQParameters
如果配置了参数SourceRabbitMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
InstanceId | String | 是 | amqp-cn-nif22u74**** | 消息队列RabbitMQ版的实例的ID。更多信息,请参见使用限制。 |
VirtualHostName | String | 是 | eb-connect | 消息队列RabbitMQ版实例的Vhost的名称。更多信息,请参见使用限制。 |
QueueName | String | 是 | demo | 消息队列RabbitMQ版实例的Queue的名称。更多信息,请参见使用限制。 |
请求参数SourceSLSParameters
如果配置了参数SourceSLSParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Project | String | 是 | test-project | 日志服务SLS的日志项目。 |
LogStore | String | 是 | test-logstore | 日志服务SLS的日志库。 |
ConsumePosition | String | 否 | end | 起始消费位点,可以选择最早或最新位点,分别对应“begin”,“end”,也可以从指定时间开始消费,以秒为单位。 |
RoleName | String | 是 | testRole | 授权事件总线EventBridge使用此角色读取SLS日志内容时,需满足条件:在RAM控制台创建服务所使用的角色时,需要选择“阿里云服务”,并且“受信服务”需要选择“事件总线”。此角色权限策略可参考自定义事件源日志服务SLS。 |
请求参数SinkMNSParameters
如果配置了参数SinkMNSParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
QueueName | TargetParameter | 是 | 目标服务类型为消息服务MNS。 | |
Value | String | 是 | MyQueue | 消息服务MNS的Queue的名称。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
Body | TargetParameter | 否 | 消息内容。 | |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Value | String | 是 |
|
转换前的值。 |
Template | String | 否 | The value of ${key} is ${value}! | 模板样式。 |
IsBase64Encode | TargetParameter | 是 | 是否开启Base64编码。 | |
Value | String | 是 | true | 开启Base64编码。 |
Form | String | 否 | CONSTANT | 事件转换的格式。默认为CONSTANT。 |
请求参数SinkRocketMQParameters
如果配置了参数SinkRocketMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
InstanceId | TargetParameter | 是 | 目标服务类型为消息队列RocketMQ版。 | |
Value | String | 是 | MQ_INST_164901546557****_BAAN**** | 消息队列RocketMQ版的实例ID。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
Topic | TargetParameter | 是 | 消息队列RocketMQ版实例的Topic。 | |
Value | String | 是 | Mytopic | 消息队列RocketMQ版实例的Topic名称。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
Body | TargetParameter | 是 | 消息内容。 | |
Form | String | 否 | 否 | TEMPLATE |
Value | String | 是 |
|
转换前的值。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
Properties | TargetParameter | 是 | 过滤属性。 | |
Value | String | 是 |
|
转换前的值。 |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
Keys | TargetParameter | 是 | 过滤属性。 | |
Value | String | 是 |
|
转换前的值。 |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
Tags | TargetParameter | 是 | 过滤属性。 | |
Value | String | 是 |
|
转换前的值。 |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
请求参数SinkRabbitMQParameters
如果配置了参数SinkRabbitMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
InstanceId | TargetParameter | 是 | 目标服务类型为消息队列RabbitMQ版。 | |
Value | String | 是 | amqp-cn-2r42e73o**** | 消息队列RabbitMQ版的实例ID。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
VirtualHostName | TargetParameter | 是 | 消息队列RabbitMQ版实例的Vhost的名称。 | |
Value | String | 是 | rabbit-host | 消息队列RabbitMQ版实例的Vhost的名称。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
TargetType | TargetParameter | 是 | 目标类型。 | |
Value | String | 是 | Exchange/Queue | 目标类型。取值说明如下:
|
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
Exchange | TargetParameter | 是 | Exchange模式。
仅当参数TargetType配置为Exchange时,需配置此参数。 |
|
Value | String | 是 | a_exchange | 消息队列RabbitMQ版实例的Exchange的名称。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
RoutingKey | TargetParameter | 是 | 消息的路由规则。
仅当参数TargetType配置为Exchange时,需配置此参数。 |
|
Value | String | 是 | housekeeping | 消息的路由规则。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
QueueName | TargetParameter | 是 | Queue模式。
仅当参数TargetType配置为Queue时,需配置此参数。 |
|
Value | String | 是 | MyQueue | 实例的Queue的名称。更多信息,请参见使用限制。 |
Form | String | 否 | CONSTANT | 转换的格式。默认为CONSTANT。 |
Body | TargetParameter | 是 | 消息内容。 | |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Value | String | 是 |
|
转换前的值。 |
Template | String | 否 | The value of ${key} is ${value}! | 模板样式。 |
MessageId | TargetParameter | 是 | 消息ID。 | |
Value | String | 是 |
|
转换前的值。 |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
Properties | TargetParameter | 是 | 过滤属性。 | |
Value | String | 是 |
|
转换前的值。 |
Form | String | 否 | TEMPLATE | 转换的格式。 |
Template | String | 是 | The value of ${key} is ${value}! | 模板样式。 |
请求参数SinkSLSParameters
如果配置了参数SinkRabbitMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Project | String | 是 | test-project | 日志服务SLS的日志项目。 |
LogStore | String | 是 | test-logstore | 日志服务SLS的日志库。 |
Topic | String | 否 | testTopic | 日志所在的topic,对应SLS 保留字段“__topic__”。 |
RoleName | String | 是 | testRole | 授权事件总线EventBridge使用此角色读取SLS日志内容时,需满足条件:在RAM控制台创建服务所使用的角色时,需要选择“阿里云服务”,并且“受信服务”需要选择“事件总线”。 |
返回参数
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
EventStreamingARN | String | acs:eventbridge:cn-hangzhou:164901546557****:eventstreaming/myeventstreaming | 事件流在阿里云上的统一资源标识(ARN)。 |
示例
本示例为自定义事件源消息队列RocketMQ版的事件流转到事件目标消息服务MNS的请求示例和返回示例。
请求示例
POST /eventstreaming/creatEventStreaming HTTP/1.1
Host: 164901546557****.eventbridge.cn-hangzhou.aliyuncs.com
Date: Sat, 18 Apr 2020 05:30:41 GMT
x-eventbridge-version: 2020-04-01
Authorization: acs vZ3VL0SuJdHi****:Jo2PbT******azYAYoYslKLvWzg=
Content-Type: application/json;charset=UTF-8
Content-Length: 26
{
"EventStreamingName":"myeventstreaming",
"Description":"rocketmq2mns",
"FilterPattern":"{}",
"Source":{
"SourceRocketMQParameters":{
"InstanceId":"MQ_INST_164901546557****_BAAN****",
"GroupID":"GID_group1",
"Topic":"mytopic",
"Offset":"CONSUME_FROM_TIMESTAMP",
"Tag":"",
"RegionId":"cn-hangzhou",
"Timestamp":1636597951964
}
},
"Sink":{
"SinkMNSParameters":{
"QueueName":{
"Value":"MyQueue",
"Form":"CONSTANT"
},
"IsBase64Encode":{
"Value":"true",
"Form":"CONSTANT"
},
"Body":{
"Value":{
"key":"value"
},
"Form":"TEMPLATE",
"Template":"The value of ${key} is ${value}!"
}
}
},
"RunOptions":{
"ErrorsTolerance":"ALL",
"RetryStrategy":{
"PushRetryStrategy":"BACKOFF_RETRY"
},
"DeadLetterQueue":{
"Arn":"acs:mq:cn-chengdu:164901546557****:/instances/MQ_INST_164901546557****_BXxk0KXx/topic/Mytopic"
}
}
}
返回示例
HTTP/1.1 200 OK
Server: AliyunEventBridge
Connection: keep-alive
Content-Type: application/json;charset=utf-8
Content-Length: 79
x-eventbridge-request-id: 244BED53-719A-15D7-B7F9-1C404273****
Date: Sat, 18 Apr 2020 05:30:41 GMT
{
"code":"200",
"data":{
"RequestId":"244BED53-719A-15D7-B7F9-1C404273****",
"Data":{
"EventStreamingARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventstreaming/myeventstreaming"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"244BED53-719A-15D7-B7F9-1C404273****",
"successResponse":true
}