使用EventGrid触发器(RabbitMQ自定义事件源)
本节介绍如何通过函数工作流控制台创建EventGrid触发器(RabbitMQ自定义事件源),实现使用RabbitMQ自定义事件源触发函数执行。
关于EventGrid触发器事件源的具体介绍,请参见支持的事件源。
约束与限制
EventGrid触发器当前支持“华北-北京四”、“华北-乌兰察布一”、“华东-上海一”、“华南-广州”、“拉美-墨西哥城二”、“拉美-圣地亚哥”区域使用。具体运行时函数是否支持使用请以控制台为准。
前提条件
- 函数及其配置:
- 已创建函数。
- 请参见配置网络开启函数访问VPC内资源的网络配置,开启后需在RabbitMQ服务安全组配置对应子网的权限,参考RabbitMQ实例的前提条件配置。
- EventGrid:
已创建EG事件通道,创建过程请参见创建eg事件通道。
- RabbitMQ实例:
- 已创建RabbitMQ实例,创建操作请参见购买RabbitMQ实例。
- 创建Vhost、Exchange和Queue。
- 创建RabbitMQ Vhost,创建操作请参见创建RabbitMQ Vhost。
- 创建RabbitMQ Exchange,创建操作请参见创建RabbitMQ Exchange。
- 创建RabbitMQ Queue,创建操作请参见创建RabbitMQ Queue。
- 绑定RabbitMQ Exchange和RabbitMQ Queue,绑定操作请参见绑定RabbitMQ Exchange、绑定RabbitMQ Queue。
Vhost是一个相对独立的RabbitMQ服务,用于管理Exchange、Queue。一个RabbitMQ实例下可以有多个Vhost,一个Vhost里可以有若干个Exchange和Queue,具体详情请参见RabbitMQ业务使用流程。
- 确认实例安全组规则是否配置正确。
创建EventGrid触发器(RabbitMQ自定义事件源)
- 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
- 选择待配置的函数,单击进入函数详情页。
- 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。
图1 创建触发器
- 配置以下参数。
表1 EG触发器(RabbitMQ)参数说明 参数
说明
取值样例
触发器类型
必选参数。
选择“分布式消息服务 RabbitMQ版 (HC.RABBITMQ)”。
分布式消息服务 RabbitMQ版 (HC.RABBITMQ)
触发器名称
必选参数。
触发器的名称。只能包含字母、数字、下划线和中划线。不能以数字、中划线开头。长度在 1-128 之间。
EG-RabbitMQ
事件通道
必选参数。
选择已创建的EG事件通道。若无事件通道,可单击“创建事件通道”完成创建。
EGtest
实例
必选参数。
选择已创建的RabbitMQ实例。若无实例,可单击“创建实例”完成创建。
rabbitmq-fg
用户名
必选参数。
填写连接RabbitMQ实例的用户名。
fgtest
密码
必选参数。
填写连接RabbitMQ实例的密码。
testrabbitmq
虚拟机名称
必选参数。
填写RabbitMQ实例的虚拟机名称。
rabbitmqEX
队列
必选参数。
填写RabbitMQ实例的队列。
rabbitmqQueue
- 单击“确定”,完成EG触发器的创建。
配置EventGrid事件触发函数
- 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
- 选择待配置的函数,单击进入函数详情页。
- 在函数详情页,选择函数版本。
- 在“代码”页签下,单击“测试”,弹出“配置测试事件”对话框。
- 填写如下表2所示测试信息后,单击“保存”。
- 单击“测试”,可以得到函数运行结果,函数会返回输入eg-rabbitmq消息数据。
相关文档
除使用控制台外,函数工作流支持通过API的方式使用函数触发器,详情请参见函数触发器API参考。