介绍使用HTTP/2方式推送数据时遇到的常见问题和解决方法。

排查流程

当HTTP/2推送数据出现问题时,请按照以下步骤排查。

  1. 确认该项目以及该产品是否有开启数据同步(如下图红色框所示)。
    数据同步
  2. 确认设备是否有上报消息。

    在设备调试下,找到对应设备,单击查看

    查看测试设备
  3. 查看设备的日志,判断设备变更数据是否上报成功。
    • 物的连接状态变更消息

      日志服务页签下的设备行为分析中,选择要查询的时间段,输入关键字online(上线)、offline(离线)进行查询,确认设备是否有连接状态变更。

      设备行为分析
    • 物的属性、服务、事件变更消息

      日志服务页签下的物模型数据分析中,设置要查询的时间段,输入属性、服务或事件的标识符等,并单击搜索

      数据类型中会显示是否为设备上报数据,鼠标停留在内容上会显示完整消息内容,params中可以看到上报的数据,根据返回的code的值是否为200,确认物模型数据是否有上报成功。

      物模型数据分析
  4. 设备上报数据成功后,查看是否正常接收到消息。
    • 查看是否收到推送消息

      若没有接收到推送消息,按以下顺序排查该问题。

      1. 请检查是否建立了多个连接,同一组AppKey和AppSecret可以建立多个HTTP/2连接,但只会从多连接中随机挑选一个进行推送。
      2. 请确认产品是否是在生活物联网平台创建的,如果是物联网平台同步过来的产品,只在生活物联网平台开通数据同步是不行的,还需要在物联网平台中开启服务端订阅(如下图所示)。开启服务端订阅
    • 查看是否接收到上线和下线的消息

      若没有接收到消息,按以下顺序排查该问题。

      1. 确认设备是否为虚拟设备,虚拟设备的上下线消息不会推送。
      2. 确认上下线的消息是否太频繁。为了提高消息有效性,设备上下线过于频繁时,会对消息进行筛检,2秒内频繁上下线的消息不会推送。
  5. 如果问题依然没有解决,单击控制台右上角的工单联系我们。