一种Android设备远程执行命令并抓取日志的系统的制作方法

allin2025-05-27  102


本发明属于计算机,涉及一种android设备远程执行命令并抓取日志的系统。


背景技术:

1、android终端设备在用户使用过程中,如果出现问题,只能通过客服了解问题原因,对于问题的分析和排查手段有限,不利于问题的修改以及产品的快速更新迭代。


技术实现思路

1、本发明为了弥补现有技术的不足,提供了一种android设备远程抓取日志并执行shell命令的系统,实现了shell指令的远程下发与执行,日志和shell命令执行结果的本地保存与上传。本发明是通过如下技术方案实现的:本发明提供了一种android设备远程抓取日志并执行shell命令的系统,包括终端日志服务模块,头端模块和后台存储模块;

2、终端日志服务模块包括心跳的发起,命令的执行,需要上传的日志文件和shell命令执行结果文件的压缩打包上传;

3、头端模块包括命令的在线下发界面,心跳查看界面,日志下载界面;

4、头端页面输入命令集合、抓取时长、是否重启后,调用后台接口,会生成任务的id和文件上传地址,存储为当前执行任务,并启用一个定时器,定时时长为抓取时长加上3分钟,应当在定时时间内,收到终端上传的日志压缩文件,否则为抓取失败;当后台收到终端心跳请求时,会将日志抓取时长、命令集合、是否重启以及生成的任务id和文件上传地址一并返回给终端;

5、后台模块,接收到上传的包含日志文件压缩包文件后,会根据终端设备的序列号,存储到对应的文件夹中,并将上传的日志压缩包重新命名;

6、自定义时间命令定义开始抓取日志的时间,如果在心跳返回的命令集合里面,有设置开始抓取日志的时间点,需要最高优先级处理,启用一个定时器,时间到了后执行其他命令;如果开启时间命令小于当前时间,则表示时间命令设置无效,当作抓取当前日志信息,继续处理其他命令;

7、重启命令关键字为restart,当有重启命令和其他命令一起时,会在最后执行。

8、本发明的有益效果是:

9、本发明能够通过在线的方式执行android shell终端命令,探查系统当前状态,并实时抓取日志或者定时启动日志抓取,抓取到日志信息上传到后台系统,供研发人员分析、排查和修复问题。

10、远程支持android的shell的所有命令,非常方便调试。

11、支持抓取重启日志;如附图2,重启后,终端服务被拉起后,就会判断本地保存的执行标记是否为true,为true就会执行上次心跳返回的待执行命令。

12、支持日志抓取开始时间的自定义;支持设置抓取的日志时长。

13、抓取日志过程中,可以继续发送抓取日志命令,在下一个心跳请求时生效;如图1说明,头端页面输入一次抓取任务后,若没有执行完成,可以继续填写命令并下发,下发后会以最新任务来执行,每次任务的下发都会生成一个唯一的任务id,终端设备就是根据每次心跳返回数据中的任务id来判断是否为新任务。

14、在抓取的日志的同时,支持android shell终端命令同时执行,并将执行结果上传后台。



技术特征:

1.一种android设备远程执行命令并抓取日志的系统,其特征在于,包括终端日志服务模块,头端模块和后台存储模块;

2.根据权利要求1所述的android设备远程执行命令并抓取日志的系统,其特征在于,日志命令关键字为logcat,如果在心跳返回的命令集合里面,如果某条命令包含logcat字符串,则需要次优先处理,开启日志的后台抓取,开启日志后台抓取的时候,会保存日志后台抓取的进程号,并且会启动一个定时器,定时器时长为日志抓取的时长;当定时器到时间后,需要使用shell命令“kill -9 进程号”的方式结束日志抓取进程,然后将日志抓取到的文件和命令执行结果一起打包上传到后台模块。

3.根据权利要求1所述的android设备远程执行命令并抓取日志的系统,其特征在于,终端抓取的日志文件存储在data目录下的1aa.log文件,shell终端命令的执行结果存储在data/command目录下,当抓取的日志的定时器到时间后,会将1aa.log和data/command目录下文件打包上传,打包后的文件名为:compress.zip;为了方便分析问题,也会将data/anr文件下的文件一并打包上传。

4.根据权利要求1所述的android设备远程执行命令并抓取日志的系统,其特征在于,android终端设备在启动运行后,会启动一个日志服务,每隔10s发送一次心跳请求;若请求到命令数据,则执行相关命令。

5.根据权利要求1所述的android设备远程执行命令并抓取日志的系统,其特征在于,心跳请求参数包括:序列号,mac地址,ip地址,当前时间,上次执行的id。

6.根据权利要求1所述的android设备远程执行命令并抓取日志的系统,其特征在于,心跳返回的参数包括:是否开启,当次任务的id,日志抓取时长,命令集合,是否重启,文件上传地址。


技术总结
本发明公开了一种Android设备远程执行命令并抓取日志的系统,涉及计算机技术领域。本发明包括终端日志服务模块,头端模块和后台存储模块;终端日志服务模块包括心跳请求的发起,命令的执行,需要上传文件的压缩打包上传;头端模块包括命令的在线下发界面,心跳查看界面,日志下载界面;后台模块,接收到上传的包含日志文件压缩包文件后,会根据终端设备的序列号,存储到对应的文件夹中,并将上传的日志压缩包重新命名。本发明能够通过在线的方式执行android shell终端命令,探查系统当前状态,并实时抓取日志或者定时启动日志抓取,抓取到日志信息上传到后台系统,供研发人员分析、排查和修复问题。

技术研发人员:卢祥钧,张志江,侯志强
受保护的技术使用者:山东浪潮超高清视频产业有限公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-21532.html

最新回复(0)