调用CreateEventSource接口创建一个外部事件源。
URL
/openapi/createEventSource
注意事项
参数SourceMNSParameters、SourceRocketMQParameters、SourceRabbitMQParameters、SourceHttpEventParameters和SourceSLSParameters同时只能配置一个。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
EventSourceName | String | 是 | myrabbitmq.source | 事件源的名称。更多信息,请参见使用限制。 |
Description | String | 是 | RabbitMQ事件源 | 事件源的描述。 |
SourceMNSParameters | Object | 否 | 事件提供方为消息服务MNS。具体信息,请参见请求参数 SourceMNSParameters 。 | |
SourceRocketMQParameters | Object | 否 | 事件提供方为消息队列RocketMQ版。具体信息,请参见请求参数 SourceRocketMQParameters 。 | |
SourceRabbitMQParameters | Object | 否 | 事件提供方为消息队列RabbitMQ版。具体信息,请参见请求参数 SourceRabbitMQParameters 。 | |
SourceHttpEventParameters | Object | 否 | 事件提供方为HTTP/HTTPS。具体信息,请参见请求参数 SourceHttpEventParameters 。 | |
SourceSLSParameters | Object | 否 | 事件提供方为日志服务SLS。具体信息,请参见请求参数 SourceSLSParameters 。 | |
EventBusName | String | 是 | my-event-bus | 与事件源绑定的事件总线的名称。更多信息,请参见使用限制。 |
请求参数SourceMNSParameters
如果配置了参数SourceMNSParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
RegionId | String | 是 | cn-zhangjiakou | 消息服务MNS的队列所在的地域。 |
QueueName | String | 是 | MyQueue | 消息服务MNS的Queue的名称。 |
IsBase64Decode | String | 是 | true | 是否开启Base64解码。默认为勾选,即开启Base64解码。 |
请求参数SourceRocketMQParameters
如果配置了参数SourceRocketMQParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
RegionId | String | 是 | cn-zhangjiakou | 消息队列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,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
RegionId | String | 是 | cn-zhangjiakou | 消息队列RabbitMQ版实例所在的地域。 |
InstanceId | String | 是 | amqp-cn-nif22u74**** | 消息队列RabbitMQ版的实例的ID。更多信息,请参见使用限制。 |
VirtualHostName | String | 是 | eb-connect | 消息队列RabbitMQ版实例的Vhost的名称。更多信息,请参见使用限制。 |
QueueName | String | 是 | demo | 消息队列RabbitMQ版实例的Queue的名称。更多信息,请参见使用限制。 |
请求参数SourceHttpEventParameters
如果配置了参数SourceHttpEventParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Type | String | 是 | HTTPS | 生成的Webhook支持的协议类型。取值说明如下:
|
Method | List | 是 | GET | 生成的Webhook支持的HTTP请求方法。可多选,可选范围如下:
|
SecurityConfig | String | 是 | ip | 选择安全配置的类型。可选范围如下:
|
Ip | List | 否 | 10.0.0.0/8 | IP网段安全配置。仅在SecurityConfig取值为ip时,需要设置该参数。可填写IP地址段或IP地址。如填写多个IP地址段或IP地址,需用半角逗号(,)分隔。 |
Referer | List | 否 | aliyundoc.com | 安全域名配置。仅在SecurityConfig取值为referer时,需要设置该参数。可填写域名。 |
请求参数SourceSLSParameters
如果配置了参数SourceSLSParameters,则还需配置以下参数。
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Project | String | 是 | test-project | 日志服务SLS的日志项目。 |
LogStore | String | 是 | test-logstore | 日志服务SLS的日志库。 |
ConsumePosition | String | 否 | end | 起始消费位点,可以选择最早或最新位点,分别对应“begin”,“end”,也可以从指定时间开始消费,以秒为单位。 |
RoleName | String | 是 | testRole | 授权事件总线EventBridge使用此角色读取SLS日志内容时,需满足条件:在RAM控制台创建服务所使用的角色时,需要选择“阿里云服务”,并且“受信服务”需要选择“事件总线”。此角色权限策略可参考自定义事件源日志服务SLS。 |
返回参数
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
EventSourceARN | String | acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/mymns.source | 事件源在阿里云上的统一资源标识(ARN)。 |
示例一:外部事件源的类型为MNS
请求示例
POST /openapi/createEventSource 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
{
"EventSourceName":"mymns.source",
"Description":"MNS事件源",
"SourceMNSParameters":{
"RegionId":"cn-zhangjiakou",
"QueueName":"MyQueue",
"IsBase64Decode":true
},
"EventBusName":"my-event-bus"
}
返回示例
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":{
"EventSourceARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/mymns.source"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"244BED53-719A-15D7-B7F9-1C404273****",
"successResponse":true
}
示例二:外部事件源的类型为RocketMQ
请求示例
POST /openapi/createEventSource 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
{
"EventSourceName":"myRocketMQ.source",
"Description":"RocketMQ事件源",
"SourceRocketMQParameters":{
"InstanceId":"MQ_INST_164901546557****_BAAN****",
"GroupID":"GID_group1",
"Topic":"mytopic",
"Offset":"CONSUME_FROM_TIMESTAMP",
"Tag":"test",
"RegionId":"cn-hangzhou",
"Timestamp":1636597951964
},
"EventBusName":"my-event-bus"
}
返回示例
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":{
"EventSourceARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/myRocketMQ.source"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"244BED53-719A-15D7-B7F9-1C404273****",
"successResponse":true
}
示例三:外部事件源的类型为RabbitMQ
请求示例
POST /openapi/createEventSource 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
{
"EventSourceName":"myRabbitMQ.source",
"Description":"RabbitMQ事件源",
"SourceRabbitMQParameters":{
"RegionId":"cn-hangzhou",
"InstanceId":"amqp-cn-nif22u74****",
"VirtualHostName":"eb-connect",
"QueueName":"demo"
},
"EventBusName":"my-event-bus"
}
返回示例
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":{
"EventSourceARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/myRabbitMQ.source"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"244BED53-719A-15D7-B7F9-1C404273****",
"successResponse":true
}
示例四:外部事件源的类型为HTTP
请求示例
POST /openapi/createEventSource 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
{
"EventSourceName":"myhttp.source",
"Description":"HTTP事件源",
"SourceHttpEventParameters":{
"Type":"HTTPS",
"Method":["GET","POST"],
"SecurityConfig":"ip",
"Ip":["10.0.0.0/8", "192.168.XX.XX"]
},
"EventBusName":"my-event-bus"
}
返回示例
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":"325BED98-734A-15D7-P7F1-7B409088****",
"Data":{
"EventSourceARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/myhttp.source"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"325BED98-734A-15D7-P7F1-7B409088****",
"successResponse":true
}
示例四:外部事件源的类型为SLS
请求示例
POST /openapi/createEventSource 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
{
"EventSourceName":"mySLS.source",
"Description":"SLS事件源",
"SourceSLSParameters":{
"RegionId":"cn-hangzhou",
"Project":"test-project",
"LogStore":"test-logstore",
"ConsumePosition":"end",
"RoleName":"testRole"
},
"EventBusName":"my-event-bus"
}
返回示例
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":"325BED98-734A-15D7-P7F1-7B409088****",
"Data":{
"EventSourceARN":"acs:eventbridge:cn-hangzhou:164901546557****:eventbus/my-event-bus/eventsource/mySLS.source"
},
"Code":"Success",
"Success":true
},
"httpStatusCode":"200",
"requestId":"325BED98-734A-15D7-P7F1-7B409088****",
"successResponse":true
}