本发明涉及websoket的实时数据传输、基于nodejs的数据转发、androidapp开发技术,尤其涉及一种基于websocket的android客户端远程调试系统。
背景技术:
目前针对远程客户端的运行时问题主要解决方法有:
一、派人去现场处理,
二、找到同型号的设备进行模拟调试,
方法一的人工、时间成本极高,除非影响特别严重的问题一般不会采用此方法;方法二寻找设备、以及通过模拟重现问题都要耗费大量的人工时间成本。
现有的android客户端远程调试技术,主要是基于wifi网络在同一个局域网内通过直连方式进行数据传输。
该方法针对调试设备的环境要求比较高,必须在同一个局域网内,而现实中需要处理的客户的设备常常在千里之外,在实际项目中应用价值较低。
目前客户端应用运行期遇到异常时,运维人员无法实时准确全面的接受异常信息,造成对异常问题的解决效率低下。
技术实现要素:
为了解决以上技术问题,本发明提出了一种基于websocket的android客户端远程调试系统,可以实时查看、分析、调试远程客户端数据、异常信息,以提高异常问题处理效率。
本发明的技术方案是:
一种基于websocket的android客户端远程调试系统,包含三个模块:1)运维前端、2)nodjs服务端、3)远程客户端;其中,
1)运维前端:主要实现数据查询、日志查询、诊断调试、设备管理;
2)nodjs服务端:主要实现消息转发、设备管理;
3)远程客户端:包含数据处理、数据库、数据缓存,webview。
进一步的,
数据查询,实时查询远程客户端上的数据库数据、应用程序缓存数据。
日志查询,实时查询远程客户端上的运行日志、以及日志文件。
诊断调试,向客户端发送调试指令,并通过日志、数据来分析程序运行情况。
设备管理,可在一个以上的设备之前切换调试、查询。
进一步的,
消息转发实现将远程客户端发送过来的消息推送给运维前端,若前端不在线则暂存带上线后在发送。
进一步的,
数据处理实现数据接收与发送。
数据库实现将数据库数据通过数据处理模块发送给nodejs服务,并接受数据保存在数据库中。
再进一步的,
数据缓存实现将数据缓存数据通过数据处理模块发送给nodejs服务,并接受数据保存在数据缓存中。
再进一步的,
webview通过jsbridge打通js运行环境,通过数据处理接受js代码执行并发送结果到nodejs服务。
本发明的有益效果是
可以实时查看、分析、调试远程客户端数据、异常信息,以提高异常问题处理效率。可以直接在远程客户端上调试程序,以最短的时间解决客户遇到的各种问题,大大提高了运维人员的工作效率。
附图说明
图1是本发明的工作示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明针对运维研发人员无法触及的远程安装客户端设备进行高效调试的,以最短的时间解决客户遇到的各种问题。
本发明基于websocket,可以针对远程android客户端的数据库数据,缓存数据,以及webview进行远程调试;
针对远程客户端的,可以在不直接接触客户端的情况下进行调试;
针对客户端数据库的,可以远程读写客户端数据库,以达到调试目标;
针对客户端数据缓存的,可以远程读写客户端数据缓存,以达到调试目标;
针对客户端webview的,可以远程执行js命令,已达到远程调试web应用的目的。
主要包含三个模块:运维前端、nodjs服务端、远程客户端
1)运维前端:该模块主要实现数据查询、日志查询、诊断调试、设备管理;
数据查询可实时查询远程客户端上的数据库数据、应用程序缓存数据;
日志查询可实时查询远程客户端上的运行日志、以及日志文件;
诊断调试可像客户端发送调试指令,并通过日志、数据来分析程序运行情况;
设备管理,可在多个设备之前切换调试、查询。
2)nodjs服务端:该模块主要实现消息转发、设备管理;
消息转发实现将远程客户端发送过来的消息推送给运维前端,若前端不在线则暂存带上线后在发送
3)远程客户端:该模块包含数据处理、数据库、数据缓存,webview;
数据处理实现数据接收与发送;
数据库实现将数据库数据通过数据处理模块发送给nodejs服务,并接受数据保存在数据库中;
数据缓存实现将数据缓存数据通过数据处理模块发送给nodejs服务,并接受数据保存在数据缓存中;
webview通过jsbridge打通js运行环境,可以通过数据处理接受js代码执行并发送结果到nodejs服务。
以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。