本文介绍如何在事件总线EventBridge控制台添加云消息队列 RocketMQ 版作为事件流中的服务类型。
前提条件
创建事件流
-
登录事件总线EventBridge控制台,在左侧导航栏,单击事件流。
-
在顶部菜单栏,选择地域,然后单击创建事件流。
-
在创建事件流面板,设置任务名称和描述,配置以下参数,然后单击保存。
-
任务创建
-
在Source(源)、Filtering(过滤)、Transform(转换)配置向导,设置事件过滤、转换规则,单击下一步。事件转换的配置说明,请参见使用函数计算实现消息数据清洗。
-
在Sink(目标)配置向导,选择服务类型为消息队列RocketMQ版,配置以下参数。
参数
说明
示例
版本
择RocketMQ实例版本。支持以下两个版本:
-
RocketMQ 4.x
-
RocketMQ 5.x
RocketMQ 5.x
实例ID
选择已创建的云消息队列 RocketMQ 版实例。
rmq-cn-77845****
Topic
选择已创建的Topic。
test
Vpc
为RocketMQ实例的VPC ID,系统会自动选择,无需您手动选择。
vpc-****
交换机
为RocketMQ实例的交换机ID,系统会自动选择,无需您手动选择。
vsw-****
安全组
支持以下两种方案。
-
快速创建:推荐方案,如果您选择此种方案,会自动创建以eb-毫秒时间戳-security_group命名的安全组。
-
使用已有:如果您选择此种方案,需要选择该VPC下的安全组,推荐使用默认安全组策略。
快速创建
消息体(body)
事件总线EventBridge通过JSONPath提取事件中的数据,将指定的事件内容路由到事件目标。
部分事件
$.data.body自定义属性(Properties)
选择模板。您可以自定义一个模板,定义模板里需要的变量,事件总线EventBridge可以提取事件中的字段,按照模板定义的形式进行转换。
说明如果需要全量传递源端的RocketMQ消息的属性,推荐使用示例中的配置。
变量:
{ "userProperties":"$.data.userProperties", "msgId":"$.data.systemProperties.UNIQ_KEY" }模板:
{ "EB_SYS_EMBED_OBJECT":"${userProperties}", "UNIQ_KEY":"${msgId}" }消息索引(Keys)
事件总线EventBridge通过JSONPath提取事件中的数据,将指定的事件内容路由到事件目标。
部分事件
$.data.systemProperties.KEYS消息标签(Tags)
事件总线EventBridge通过JSONPath提取事件中的数据,将指定的事件内容路由到事件目标。
部分事件
$.data.systemProperties.TAGS -
-
-
任务属性
设置事件流的重试策略及死信队列。更多信息,请参见重试和死信。
-
-
返回事件流页面,找到创建好的事件流,在其右侧操作栏,单击启用。
启用事件流后,会有30秒~60秒的延迟时间,您可以在事件流页面的状态栏查看启动进度。
结果验证
-
登录云消息队列 RocketMQ 版控制台,在顶部菜单栏,选择地域。
在左侧导航栏,单击实例列表。
-
在实例列表页面,找到目标实例,在其操作列,单击详情。
-
在左侧导航栏,单击Topic 管理,然后单击目标Topic名称。
-
在Topic详情页面,单击消息查询页签,配置查询方式:和时间范围,单击查询。
查询结果以列表形式展示消息记录,包含 Message ID、Tag、Key、生成时间、存储时间 等字段。在 操作 列可单击 消息轨迹 查看详情。若列表中成功返回消息记录,则表示消息发送成功。