通过规则引擎的云产品流转功能,物联网平台可将指定Topic的数据,流转至其他Topic和其他阿里云产品中。本文介绍设置数据流转解析器的完整操作步骤,依次是创建解析器、关联数据源和数据目的、配置流转数据的解析脚本。

前提条件

已添加数据源和数据目的,请参见:

创建解析器

  1. 登录物联网平台控制台
  2. 实例概览页面,选择目标环境,找到对应的实例,单击实例ID或备注名称。
    重要 目前仅开通企业版实例服务的地域下,执行此步骤。其他地域,请跳过此步骤。地域及实例的支持说明,请参见实例概述
    实例概览
  3. 在左侧导航栏,选择消息转发 > 云产品流转
  4. 可选:云产品流转页面,单击右上角体验新版,进入新版功能页面。
    说明 如果您已执行过此操作,再次进入云产品流转页面,会直接进入新版功能页面。
  5. 解析器页签,单击创建解析器
  6. 配置解析器名称解析器描述内容,单击确定
    解析器名称支持中文、英文字母、日文、数字、下划线(_)和短划线(-),长度为1~30个字符,一个中文及日文占2个字符
    根据页面提示,可直接进入解析器详情页面。您可单击右上角编辑,修改解析器名称和描述。

关联数据源和数据目的

  1. 解析器详情页面,单击关联数据源
  2. 在弹出的对话框中,单击数据源下拉列表,选择已创建的数据源,单击确定
    关联数据源
  3. 解析器详情页面,单击数据目的
    数据目的
  4. 单击关联数据目的,在弹出的对话框中,单击数据目的下拉列表,选择已创建的数据目的,单击确定
    关联数据目的
  5. 单击异常数据目的下的关联数据目的,将重试失败的错误消息转发至指定位置。
    重要
    • 最多支持添加一个错误操作。
    • 正常操作和错误操作的转发目的地不能是相同的云产品。例如,不能同时转发到表格存储。
    • 错误消息转发失败后,不会再进行重试。
    • 这里的错误消息仅针对因解析脚本报错导致的规则引擎转发失败错误。
    消息转发至云产品失败后,会进行重试。若重试失败,将根据错误操作数据转发的设置转发错误消息。

    错误消息格式:

    {
          "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产品ProductKey。
    deviceName设备名称。
    messageId云端消息ID。
    base64OriginalPayloadBase64编码后的原始数据。
    failures错误详情。可能会有多个。
    actionType出错操作的类型。
    actionRegion出错操作的地域。
    actionResource出错操作的目的资源。
    errorMessage错误信息。

配置并启动解析器

  1. 解析器详情页面,单击解析器
  2. 在脚本输入框,输入解析脚本。脚本编辑方法,请参见脚本示例
    数据转发函数和脚本的使用示例,请参见数据流转使用示例目录下的具体文档。
  3. 单击调试,根据页面提示,选择产品和设备,输入Topic和Payload数据,验证脚本可执行。
    • Topic:输入的Topic,其数据格式与脚本解析逻辑相符即可。
    • Payload数据:输入数据的格式需符合规则引擎的数据格式。其中:
      • 自定义Topic数据的格式,是设备上报的原始数据格式。
      • 基础通信Topic和物模型通信Topic数据的格式说明,请参见数据格式
    运行结果中会显示脚本中声明的变量值和执行的数据流转函数。

    调试成功后,会直接将调试数据写入对应云产品。您可登录对应云产品控制台,查看流转的数据。

  4. 单击发布
  5. 所有设置完成后,返回至云产品流转页面的解析器页签,单击解析器对应的启动。解析器启动后,数据即可按照解析脚本进行转发。

导入旧规则

您可根据业务需求,直接导入旧版中已配置的流转规则,再重新配置数据源、数据目的和解析脚本。导入旧规则步骤如下:

  1. 解析器页签,单击导入旧规则
    导入旧规则
  2. 在右侧面板的规则列表中,选中需要导入的规则,单击确定
    旧规则导入后,会显示在解析器列表中,且以“connector_”+${旧规则名称}重新命名。

    您可根据业务需求,在解析器详情页面,修改解析器名称,重新配置数据源、数据目的和解析脚本。

    重要 设备标签值(value)为String类型,attribute() 函数返回结果为String类型,如果您需要使用返回结果做数学计算,请手动进行数据类型转换。

可选操作

您也在云产品流转页面的解析器页签,执行以下操作:

警告 删除、停止解析器,或删除数据转发目的地成功后,如果用户在其他业务中使用了流转的设备数据,会导致服务不可用或影响用户的业务。请谨慎操作。
操作说明
查看解析器详情页面,更新解析器的具体设置。例如,修改或删除数据源Topic、数据转发的目的地。
删除删除对应解析器。
重要 运行中的解析器不可删除。
停止停止对应解析器转发数据。