概述
规则引擎支持用户配置转发规则,将符合条件的设备上报数据转发到云组件 TDSQL-MySQL ,您可以在 TDSQL 控制台 或者使用云 API 创建 TDSQL 实例和表后,即可将设备消息中的指定字段写入到对应的 TDSQL 表中。
下图展示了规则引擎将数据转发给 TDSQL 的整个过程:
配置
1. 登录 物联网开发平台控制台,单击目标实例和项目名称,选择左侧菜单栏数据流转 > 规则引擎。
2. 进入规则引擎页面,单击需要配置的规则名称进入规则详情页面。
3. 单击添加行为操作。若是首次使用时会提示用户授权访问 TDSQL,您需单击立即授权才能继续创建。
4. 授权成功后,在弹出的“添加规则”窗口,选择“数据转发到云数据库TDSQL-MySQL”,需要配置 TDSQL-MySQL 实例信息和写入的字段信息,如下图所示。
5. 配置完成后单击保存即可。
配置说明
配置 分为以下几个步骤:
1. 选择地域和 TDSQL-MySQL 实例。
2. 输入刚创建的 TDSQL-MySQL 实例的用户名。
3. 输入实例的登录密码。
4. 选择需要写入的数据库名。如果创建的 TDSQL-MySQL 实例下还没有建立数据库,请前往 TDSQL-MySQL 控制台创建一个新的数据库。
5. 选择要写入的表。如果创建的数据库下还没有建立表,前往 TDSQL-MySQL 控制台创建一个新的表。
6. 配置要写入的字段。这里有两列:"字段名称"和"值"。"字段名称"对应的是数据库表中的字段,表示要写入的字段。"值"表示要写入对应字段的值。值的来源可以是消息体(注意消息体必须是 Json 格式才支持提取值),或者是在这里填入常量。
注意:
如果来源是消息体,那么使用 “${}”来引用消息体内的字段。如果要指定常量,直接填写相应的值即可,例如5或者 hello 这样的数字或者字符串字面值。
需先在云组件 TDSQL-MySQL 中创建完成数据库,表以及字段名称之后才可成功将数据写入数据库。
重发机制
重发机制用于在消息转发过程中发生失败的情况下,进行再次重发以达到接收消息的目的,具体说明如下:
若消息转发失败,系统则会进行转发重试,重试按照1s、3s、10s的时间间隔依次进行,若三次重试均失败,则将消息丢弃掉。
若用户配置了“转发错误行为操作”,在三次重试失败后,将按“转发错误行为操作”的配置,再进行一次消息转发,如果仍失败,则将消息丢弃掉。