文档

配置解析器

更新时间:
重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

云产品流转功能通过配置数据流转解析器关联数据源(设备Topic消息)和数据目的(其他Topic、业务服务器或其他阿里云产品),使用解析脚本实现设备消息转发。本文介绍设置数据流转解析器的完整操作步骤,依次是创建解析器、关联数据源和数据目的、配置流转数据的解析脚本。

工作原理

image

在物联网平台配置云产品流转的数据解析器,实现数据源(设备消息)转发至数据目(另一个Topic、AMQP服务端或其他阿里云产品),实现设备与设备、设备与服务器、设备与阿里云产品的通信。

前提条件

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

使用限制

  • 一个实例最多创建解析器数为1,000。

  • 一个解析器最多关联1个数据源。

  • 一个解析器最多关联10个数据目的。

  • 一个解析器最多关联1个异常数据目的。

  • 一个解析器的脚本内容最大120 KB。

  • 一个解析器的脚本中循环执行流转函数的最大次数为100。

新增解析器

步骤一:创建解析器

  1. 登录物联网平台控制台

  2. 实例概览页签的全部环境下,找到对应的实例,单击实例卡片。

  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。

    base64OriginalPayload

    Base64编码后的原始数据。

    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、数据转发的目的地。

    说明

    仅支持查看运行中的解析器日志。您可在解析器详情页面,单击解析器状态右侧的查看日志,即可跳转到日志服务页面,查询解析器的运行日志。

  • 删除:删除对应解析器。

    重要

    运行中的解析器不可删除。

  • 停止:停止对应解析器转发数据。

相关文档

相关API

API

描述

AttachParserDataSource

为解析器关联指定数据源。

ListParserDestination

查询指定解析器关联的数据目的列表。

DetachParserDataSource

删除解析器中的指定数据源。

AttachDestination

为解析器关联指定数据目的。

DetachDestination

删除解析器中的指定数据目的。

SaveScript

编辑并保存解析器的脚本草稿。

PublishScript

发布指定解析器中的脚本。

StartParser

启动解析器。

StopParser

停止解析器运行。

常见问题