近期EasyNTS上云网关平台在不断做优化,我们力求把EasyNTS做成一个完善的远程运维产品,做到从运维到研发整套流程,完全不需要人员去现场,只要有网随时随地远程查看设备、远程调测,节省人力和物力。
由于近期测试频繁,我们发现偶尔EasyNTS上云网关向EasyNTS云平台登录的时候,平台端已经显示网关的在线状态,而EasyNTS上云网关这边却显示Disconnected。
经过代码分析,我们知道了是由于EasyNTS上云网关没有记录心跳检测的状态,导致前端直接将状态填充为不正常的状态,因此我们需要添加代码,在EasyNTS上云网关收到平台发送的mqtt订阅信息之后,检测心跳的时候将状态进行记录,让前端显示已经记录的心跳状态。
参考代码如下:
//心跳检查连接有没有中断
if time.Now().Unix()-global.LastHeartBeatBack > 30 {
log.Println("EasyNTD lost Connection...")
global.State = "Disconnected"
global.PublishChan <- pubmsg
} else {
global.State = "Running"
}
添加代码后,检测心跳的结果则会如实反应在EasyNTS上云网关平台上,如上图。假如大家对EasyNTS还有疑问,或者遇到排查不了的问题,欢迎联系我们进行协助。TSINGSEE青犀视频云边端架构产品均为大家提供了试用版本,我们欢迎大家来测试。