新版本5.0.10 规则使用问题疑问

环境:Centos7.9 + 5.0.10 集群
最近打算将4.4.0.30 升级到5的版本,主要是看重5的版本支持可视化的认证授权等,同时想着新版本肯定有着更好的功能有性能,但是在使用迁移规则时发现如下问题:

问题:

  1. 现在5.0 + 新版本的规则是一个规则对应一条数据桥接对象吗?这个数据桥接是否对应之前的资源?比如规则入TDengine的,之前是只要建一个TD的资源,可以对应多条规则,现在是不支持了吗?每一次新建规则,当按照之前的方法进行选择动作,进行发送的时候,重置了数据桥接?

早期版本的时候,资源是不关联实际的数据模板的,各自规则有各自的模板,现在是不支持吗?还是我使用方式错误?

对应上述问题,不知新版本是否我使用错误问题,不能按照之前的方式去使用规则?在使用规则功能上还望解惑下,万分感谢。

  1. 5.0 里面是一个规则对应一个或多个数据桥接。数据桥接相当于合并了 4.x 里的资源 + 动作。
    5.0 如果你创建了多个规则,想发送不同的内容到 TD,的确需要创建多个桥接。
  2. 对,因为资源和动作合并成数据桥接了,设置模板是在桥接里完成的。

感谢回复,现在这种方式就变成会有很多的资源记录,这些每次都要重复录入,一条规则要改动两个地方。相比对之前的方式,不是更复杂了吗?之前的资源id 方式是是在规则引用了资源id中的配置,同时也可以重新覆盖header 部分,body 是独立的,每次只要调整body就行,就算是header 有不一样也可以覆盖,资源那边的录入有点像是模板,实际的响应动作是和规则绑定的,避免多次录入同样的webhook的url。

主要是几个方面:1. 想扁平化配置,2. 不要过多的概念引入,3. 解决之前规则、动作、资源完全耦合的问题。

4.x 里面”动作“和”资源“概念上分开了,实际运行的时候其实糅合在一起,两者没有办法单独工作。动作里面可能也有需要监控和维护的网络连接等,却依附于规则,也没有监控。
资源有健康检查,但只是检查了整个系统的一部分,因为动作+资源才算一个能工作的整体。有时候动作里面的错误把资源里的状态搞坏了,有时候或者动作出了问题但资源还显示是健康的,这时候系统都没办法工作。

5.x 一开始是引入了”连接模板“ 的概念的,为了在创建的时候,多一个数据桥接复用同一个连接模板,创建的时候就方便一些。但是后来我们觉着概念过多,就去掉了。

前端可能需要做一些工作,可以通过 ”复制“ 某个已经创建好的数据桥接来建立新的桥接,不知道这样你是不是会方便一些?

Url 里面是可以用 ${key} 格式的占位符的,当然 Headers 里面也是可以,4.4.11 实现了但还没拿到 5.0.

规则的 SQL 语句的表达能力也需要改进,按道理应该单条规则 + 一个数据桥接,仅凭借规则里面的编程就可以实现多种不同格式的数据发送。

您好,使用目前版本的 Dashboard 的话,方法可以使用创建好的 Data Bridge 快速复制一个进行修改,也可以通过对当前的 Data Bridge 进行设置修改后,另存为一份新的来满足多种 Data Bridge 的使用。也欢迎你继续通过意见反馈,我们将继续优化这部分功能。

你好,实际在使用的时候更多的是和另外的系统进行联动的,调用管理监控 REST API 进行代码创建规则。
4.x 版本的时候是只要提前创建好一个资源,在创建规则的时候,只要调用 /api/v4/rules/ 创建规则,按照要求传入参数即可。复用资源id,每次资源那边需要的body 都是独立传入,接口调用一次完成规则创建。

5.x 如果要创建规则的话,是否每次都要先创建数据桥接调用,然后在调用创建规则?接口要调用两次。
企业微信截图_16698676893643
但是前提的webhook:test 这样数据桥接要单独创建好,创建action 单独调用接口。
image

这样不管接口使用或者后台数据展示上看,数据桥接都会变得非常多,界面上和规则解耦的同时在可读性、关联性上变得没有那么易用,是否考虑保留资源模板,仅仅是作为模板,每一条规则+数据桥接状态还是独立的监测。

您好,谢谢您的反馈,我了解到这个问题了。是想对于消息模版部分的自定义是吧,可以每次使用相同的 Bridge,但是可能 Payload 都不同,那对于连接的信息资源还是同一个吧?

是的,仅仅是桥接那边消息模板不一样,从操作过程来看,就是现在5.x 版本的,相比4.x创建规则分两步,从接口调用上看也是的,我之前可能只要调用一次接口就能实现规则创建,现在必须分两次调用,如上图,规则入参中的从acitons里拿出来放到了数据桥接里

你好,咨询下,针对这个问题,接口创建规则部分,后续是否已经确定不调整了,就是按照目前这种创建规则的时候,必须执行两次请求(创建数据桥接、创建规则)?

您好,后续还未确认是否进行调整,我们正在讨论如何优化该部分使用,您的意见对我们帮助很大,感谢反馈,有后续我们将继续通知您。

@yusf @Shawn @t1ger 你好,咨询下新版本如何进行规则、资源的导入导出?和之前4.4版本相比,./emqx_ctl data export 这个指令好像没有了是吧