设置数据流转规则 您所在的位置:网站首页 设置数据条规则 设置数据流转规则

设置数据流转规则

2023-06-02 15:29| 来源: 网络整理| 查看: 265

通过规则引擎的数据流转功能,物联网平台可将指定Topic的数据流转至其它Topic和其它阿里云服务中。本文将为您详细讲解如何设置一条完整的数据流转规则。设置过程依次是创建规则、编写处理数据的SQL、设置数据流转目的地和设置流转失败的数据转发目的地。

操作步骤

登录物联网平台控制台。

在左侧导航栏,选择规则引擎 > 云产品流转

云产品流转页面,单击创建规则

在弹出的对话框中填写规则名称,并选择相应的数据格式,完成后单击确认

创建流转规则参数描述规则名称输入规则名称,用以区别各条规则。名称支持中文、英文字母、数字、下划线(_)和短划线(-)。长度为1-30字节。一个中文汉字占两个字节。数据格式选择该规则处理数据的格式。可选:JSON二进制。 说明 因数据流转基于Topic处理数据,此处的数据格式需与被处理Topic中的数据格式保持一致。规则描述规则描述信息。

规则创建成功后,页面将跳转到新创建的数据流转规则页面。您需要为新创建的规则编写处理消息数据的SQL、设置数据转发目的地和设置错误数据转发目的地。

单击处理数据栏的编写SQL,编写处理消息字段的SQL,编辑完成后单击确认

SQL编写方法,请参见SQL表达式、函数列表。

示例:下图中编写的SQL可以从test1128产品下,全部设备的所有Topic消息中,取出deviceName字段内容。

说明 二进制数据可使用to_base64(*)将原始数据转换成base64String,同时支持内置函数和条件筛选。编写SQL参数描述规则查询语句系统会在这里,根据您设置的字段、Topic和条件自动补充完整规则查询语句。字段

指定要处理的消息内容字段。如,填入deviceName() as DeviceName,则表示需筛选出消息中的deviceName字段内容。

说明 系统Topic中的数据为Alink JSON格式,流转到规则引擎前,会经过物模型解析,具体说明请参见数据流转过程。解析后的数据格式,请参见数据格式。编写SQL字段时,需按照解析后的数据格式来编写。Topic

选择需要处理的消息来源Topic,即SQL中FROM后的内容。

可选类型:

自定义:指定消息源是自定义Topic时,支持使用通配符(+)和(#)。 全部设备(+):表示指定产品下所有设备。/user/#:表示指定设备的所有Topic。

如果指定为自定义Topic,设备对该Topic的操作权限需为发布。自定义Topic和通配符使用,请参见自定义Topic。

设备状态变化通知:表示设备上下线状态变更消息的Topic。规则数据类型是JSON时的可选项。 物模型数据上报:表示设备上报属性和事件信息的Topic。规则数据类型是JSON时的可选项。

包括:

thing/event/property/post:设备上报属性数据的Topic。thing/event/${tsl.identityId}/post:设备上报事件数据的Topic。thing/downlink/reply/message:设备响应云端命令返回消息的Topic。设备生命周期变更:设备创建、删除、禁用、启用等消息的Topic。规则数据类型是JSON时的可选项。 网关发现子设备上报:网关特有Topic。网关将发现的子设备信息上报给物联网平台的Topic。规则数据类型是JSON时的可选项。 设备拓扑关系变更:网关特有Topic。上报子设备和网关之间的拓扑关系建立和解除消息的Topic。规则数据类型是JSON时的可选项。 物模型历史数据上报:表示设备上报历史属性和事件的Topic。规则数据类型为JSON时的可选项。 固件升级状态通知:设备固件升级结果通知的Topic。规则数据类型为JSON时的可选项。条件设置规则触发条件。

单击转发数据栏的添加操作,配置完成后,单击确定,将数据转发至目的云产品。数据转发配置的具体示例,请参见数据流转使用示例。

说明 最多可为一个规则创建10个数据转发操作。

数据转发时,因选择的目的云产品出现异常情况导致转发失败时:

转发到RocketMQ、RDS、TSDB等类型的云产品时,若云产品资源变化导致目的云产品无法访问,系统将停止执行转发,并在规则列表中显示状态为规则异常。您需要重新设置数据转发目的地。其他异常情况,系统将间隔1秒、3秒、10秒进行3次重试(重试策略可能会调整)。3次重试均失败后,消息会被丢弃。如果您对消息可靠性要求比较高,可进行:添加错误操作,把重试失败的消息通过错误操作,转发到其它云产品中。

单击转发错误操作数据一栏的添加错误操作,设置参数,然后单击确定,将重试失败的错误消息转发至指定位置。

说明 正常操作和错误操作的转发目的云产品不能相同。例如,不能同时转发到表格存储。消息转发至云产品失败后,会进行重试。若重试失败,将根据错误操作数据转发的设置转发错误消息。 错误消息转发失败后,不会再进行重试。这里的错误消息仅针对因其他云产品实例问题导致的规则引擎转发失败错误。最多支持添加一个错误操作。

错误消息格式:

{       "ruleName":"",       "topic":"",       "productKey":"",       "deviceName":"",       "messageId":"",       "base64OriginalPayload":"",       "failures":[         {           "actionType":"OTS",           "actionRegion":"cn-shanghai",           "actionResource":"table1",           "errorMessage":""         },         {           "actionType":"RDS",           "actionRegion":"cn-shanghai",           "actionResource":"instance1/table1",           "errorMessage":""         }       ] }

错误消息参数说明如下:

参数说明ruleName规则名称。topic消息来源Topic。productKey产品Key。deviceName设备名称。messageId云端消息ID。base64OriginalPayloadBase64编码后的原始数据。failures错误详情。可能会有多个。actionType出错操作的类型。actionRegion出错操作的地域。actionResource出错操作的目的资源。errorMessage错误信息。

所有设置完成后,返回至云产品流转页面,单击规则操作栏下的启动确认。规则启动后,数据即可按照规则进行转发。

您也可以: 查看规则。单击查看进入数据流转规则页面,查看或修改规则的具体设置。停止规则。单击停止停止对应规则转发数据。删除规则。单击删除确认,即可删除对应规则。 说明 运行中的规则不可直接删除,需要停止后再删除。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有