阿里云物联网平台offline离线日志原因排查

简介: 整理一下常见的离线日志offline reason,方便理清思路排查设备端离线原因。
首先解释一下云端判定心跳超时逻辑:

每个连接都维持着一个最近活跃时间,任何mqtt上行报文都会刷新这个最近活跃时间。云端如果检测到一个连接的最近活跃时间与当前时间的差值,大于1.5倍的心跳时间,就会判定这个连接心跳超时,从而将这个设备踢下线。

举个例子,设备端连接时设置的心跳时间是60秒,那么设备端应用如果60秒被没有发业务报文,设备端sdk就应该自动发送一个ping报文。而对于云端来说,如果90秒内没有收到设备端的任何报文,就会将设备踢下线。

备注:目前云端的实际实现逻辑,是每隔30秒去检查下当前机器上的所有连接,所以实际的时间还会加上0~30秒。对于上面的例子,目前实际会经过90~120秒后将设备踢下线。

1.首先找到IoT控制台日志服务,业务类型里面筛选出【设备行为】

image.png

2.然后找到具体的offline日志,内容里面找到offline reason

image.png

3.常见的offline reason排查:

1.TCP长连接断开,解决:检查设备端网络,本身设备端做好重连机制:MqttConnectOptionsc.setAutomaticReconnect(true)

2.Keepalive timeout after 100sec,心跳超时,解决:MQTT连接心跳时间为30秒至1,200秒。心跳时间不在此区间内,服务器将会拒绝连接。建议取值300秒以上。如果设备端网络较差,值相对可以设置的大一些。【这里设置心跳时间的参数具体要看使用的什么sdk,比如c sdk,在 IOT_MQTT_Construct 的入参中可以设置 keepalive_interval_ms 的值, C-SDK用这个值作为心跳间隔时间,keepalive_interval_ms 的取值范围是 60000 - 300000, 即最短心跳间隔为1分钟, 最长心跳间隔为5分钟】
java sdk见附件截图
image.png

3.Kicked by the same device,设备互踢,两种情况

①.设备和物联网平台的连接是基于mqtt协议的,假设设置的心跳时间是300s,那么只有超过心跳时间后,平台还没有收到设备端发送的心跳包,才认为设备离线。
如果在300s内,网络恢复,您的设备重新上线(也就是说设备本来离线,平台这边还是认为在线的,因为没有到300s),那平台就认为被同一台设备挤下线了,所以显示kicked by the same device

②.同一组三元组信息两个或以上设备同一时间连接,这个连接被踢掉了。

4.Connection reset by peer,这个是TCP连接被对端重置,您那边是设备端有持续重复连接的情况或者因为设备端网络不稳定导致的重连。

5.device disconnect这个一般是云端收到设备端disconnect报文的同时,设备端主动断开了tcp连接,并发导致的。

相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
8月前
|
消息中间件 安全 物联网
海量接入、毫秒响应:易易互联携手阿里云构筑高可用物联网消息中枢
面对换电生态高速发展的通信挑战,易易互联通过采用阿里云 MQTT + RocketMQ 的融合解决方案,成功构建了“海量接入、实时响应、弹性处理、安全可信”的物联网通信底座。该架构不仅显著提升了系统稳定性与可扩展性,更保障了高并发场景下的业务连续性,为实现“让换电成为营运补能第一选择”的战略目标提供了坚实的技术支撑。
397 57
|
12月前
|
物联网
(手把手)在华为云、阿里云搭建自己的物联网MQTT消息服务器,免费IOT平台
本文介绍如何在阿里云搭建自己的物联网MQTT消息服务器,并使用 “MQTT客户端调试工具”模拟MQTT设备,接入平台进行消息收发。
3641 42
|
12月前
|
自然语言处理 监控 安全
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
阿里云可观测官方发布了Observable MCP Server,提供了一系列访问阿里云可观测各产品的工具能力,包含阿里云日志服务SLS、阿里云应用实时监控服务ARMS等,支持用户通过自然语言形式查询
1718 0
阿里云发布可观测MCP!支持自然语言查询和分析多模态日志
|
存储 消息中间件 缓存
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
625 1
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
|
域名解析 应用服务中间件 网络安全
阿里云个人博客外网访问中断应急指南:从安全组到日志的七步排查法
1. 检查安全组配置:确认阿里云安全组已开放HTTP/HTTPS端口,添加规则允许目标端口(如80/443),授权对象设为`0.0.0.0/0`。 2. 本地防火墙设置:确保服务器防火墙未阻止外部流量,Windows启用入站规则,Linux检查iptables或临时关闭防火墙测试。 3. 验证Web服务状态:检查Apache/Nginx/IIS是否运行并监听所有IP,使用命令行工具确认监听状态。 4. 测试网络连通性:使用外部工具和内网工具测试服务器端口是否开放,排除本地可访问但外网不可的问题。 5. 排查DNS解析:确认域名A记录指向正确公网IP,使用`ping/nslookup`验证解析正
553 2
|
存储 监控 安全
工业物联网关应用:PLC数据通过智能网关上传阿里云实战
本文介绍如何使用智能网关将工厂PLC数据传输至阿里云平台,适合中小企业远程监控设备状态。硬件准备包括三菱FX3U PLC、4G智能网关和24V电源。接线步骤涵盖PLC编程口与网关连接、运行状态检测及天线电源接入。配置过程涉及通讯参数、阿里云对接和数据点映射。PLC程序关键点包括数据上传触发和温度值处理。阿里云平台操作包含实时数据查看、数据可视化和规则引擎设置。最后提供常见故障排查表和安全建议,确保系统稳定运行。
1347 1
|
存储 监控 安全
网络安全视角:从地域到账号的阿里云日志审计实践
网络安全视角:从地域到账号的阿里云日志审计实践
370 0
|
传感器 人工智能 物联网
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
1463 19
|
存储 安全 物联网
政府在推动物联网技术标准和规范的统一方面可以发挥哪些作用?
政府在推动物联网技术标准和规范的统一方面可以发挥哪些作用?
522 60

相关产品

  • 物联网平台