自定义分布式消息服务RabbitMQ事件源
更新时间 2025-06-18 17:55:20
最近更新时间: 2025-06-18 17:55:20
本文介绍如何在事件总线EventBridge管理控制台添加分布式消息服务RabbitMQ类型的自定义事件源。
前提条件
事件总线EventBridge
分布式消息服务RabbitMQ
开通分布式消息服务RabbitMQ。
创建实例、并创建vhost和queue。
操作步骤
登录事件总线管理控制台。
在左侧导航栏,单击事件总线。
在事件总线页面,单击目标总线名称。
在左侧导航栏,单击事件源。
在事件源页面,单击添加事件源。
在添加自定义事件源面板,输入名称和描述,事件提供方选择分布式消息RabbitMQ,选择vhost和queue等配置然后单击确认,详见图1。
图1 创建事件源时事件提供方选择分布式消息服务RabbitMQ
参数说明
参数 | 说明 | 示例 |
---|---|---|
RabbitMQ 实例名称 | 分布式消息服务RabbitMQ实例名称。 | instance-xxx |
RabbitMQ vhost | 分布式消息服务RabbitMQ vhost。 | / |
RabbitMQ queue | 分布式消息服务RabbitMQ queue。 | queue-xxx |
事件示例
{
"id": "b5771f76-6cdf-48ed-b1ba-d15418c*****",
"source": "source_test",
"specversion": "1.0",
"subject": "ctyun:rabbitmq:region-code-xxx:1******6789:queue/topic-queue",
"time": "2024-03-05T13:52:18.374Z",
"datacontenttype": "application/json;charset=utf-8",
"type": "ctyun.rabbitmq.topic.sendMessage",
"ctyunregion": "bb9fdb42056fl1eda1610242ac110002",
"ctyunaccountid": "123456789****",
"data": {
"envelope": {
"messageId": "xx",
"contentEncoding": "UTF-8"
},
"body": {
"key": "value"
},
"props": {
"deliveryTag": 98,
"exchange": "",
"redeliver": false,
"routingKey": "housekeeping"
}
}
}
data字段包含的参数解释如下表所示。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
props | Object | 详见props字段参数解释 | 消息属性,详见props字段参数解释。 |
envelope | Object | 详见envelope字段参数解释 | 消息的envelope信息,详见envelope字段参数解释。 |
body | Object | {"key":"value"} | 消息体,默认以JSON格式编码。 |
data字段下envelope属性包含的参数解释如下表所示。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
deliveryTag | Int | 98 | 消息的Tag。 |
exchange | String | 无 | 消息的Exchange。 |
redeliver | Boolean | false | 是否支持重发消息。取值说明如下:
|
routingKey | String | housekeeping | 消息的路由规则。 |
data字段下props属性包含的参数解释如下表所示。
参数 | 类型 | 示例值 | 描述 |
---|---|---|---|
contentEncoding | String | utf-8 | 消息内容编码。 |
messageId | String | f7622d51-e198-41de-a072-77c1ead7**** | 消息ID。 |
contentType | String | application/json | 消息contentType。 |