基于Android车机的CPU和Memory占用数据监测分析方法及系统技术方案

技术编号:34377030 阅读:12 留言:0更新日期:2022-07-31 14:00
本发明专利技术公开了一种基于Android车机的CPU和Memory占用数据监测分析方法及系统,属于网络数据监测技术领域,通过Android调试桥(adb)命令行工具,与Android设备进行通信,再通过调用dumpsys工具来获取android设备中各个进程的CPU及Memory的占用数据信息,通过python程序对获取的数据信息进行处理,再传递至QT界面,形成一套可以实时监测分析CPU和Memory占用数据情况的系统,包括:实时监测各进程CPU和Mmeory数据信息;对CPU和Memory的数据进行文件储存;对已储存的CPU和Memory数据文件能进行导入分析;以折线图的形式在程序中进行展示;能够筛选所需要分析的进程数据。能够筛选所需要分析的进程数据。能够筛选所需要分析的进程数据。

CPU and memory occupancy data monitoring and analysis method and system based on Android car

【技术实现步骤摘要】
基于Android车机的CPU和Memory占用数据监测分析方法及系统


[0001]本专利技术属于网络数据监测
,更具体地,涉及一种基于Android车机的CPU和Memory占用数据监测分析方法及系统。

技术介绍

[0002]Android车机开发过程中,开发人员通常只能通过dumpsys工具来实时获取各个进程的CPU和Memory的占用情况。获取CPU占用数据:adb shell dumpsys cpuinfo;获取Memory占用数据:adb shell dumpsys

t 60meminfo。
[0003]目前只能通过上述两条命令来获取当前时刻Android设备各进程之间的CPU和Memory数据占用情况,而对于车机开发测试来说,通常需要通过操作车机来观察CPU和Memory的数据情况的实时变化,或者在进行monkey测试时,想获取并记录测试期间Android车机各进程的CPU和Memory数据占用情况,而通过命令行来读取通常比较麻烦,获取到的数据信息不够直观,也无法观察其变化趋势。其次开发人员若只想获取一个或者多个进程在某段测试期间内的CPU和Memory数据信息占用情况和变化趋势时,进程数据数据冗杂不方便查找,也不易于观察其变化情况。因此,目前通过上述两条命令来获取当前时刻Android设备各进程之间的CPU和Memory数据占用情况还存在一定的局限性。

技术实现思路

[0004]针对现有技术的以上缺陷或改进需求,本专利技术提出了一种基于Android车机的CPU和Memory占用数据监测分析方法及系统,可以实时监测分析CPU和Memory占用数据情况。
[0005]为实现上述目的,按照本专利技术的一个方面,提供了一种基于Android车机的CPU和Memory占用数据监测分析系统,包括:
[0006]各进程的CPU数据信息实时监测模块,用于基于Android调试桥adb命令行工具,再通过调用dumpsys工具来获取android设备中各个进程的CPU占用数据信息,对所有获取到的CPU占用数据信息进行处理,生成CPU数据信息字典,存储得到CPU占用数据的txt文件,再通过python程序将CPU数据信息字典中的数据进行处理后实时显示到QT界面,形成实时监测变化的折线图,其中,CPU数据信息字典包括各个进程所处的时刻、进程名及该时刻的CPU占用率;
[0007]各进程的Memory数据信息实时监测模块,用于基于Android调试桥adb命令行工具,再通过调用dumpsys工具来获取android设备中各个进程的Memory占用数据信息,对所有获取到的Memory占用数据信息进行处理,生成Memory数据信息字典,存储得到Memory占用数据的txt文件,再通过python程序将Memory数据信息字典中的数据进行处理后实时显示到QT界面,形成实时监测变化的折线图,其中,Memory数据信息字典包括各个进程所处的时刻、进程名及该时刻的Memory占用数据大小;
[0008]各进程的CPU占用率分析模块,用于获取CPU占用数据的txt文件,再通过python程
序对CPU占用数据的txt文件中的数据信息进行分析处理,转换成以时间标志为key值,各进程名和CPU数据信息字典为value值的字典,从而生成CPU数据分析的折线图表;
[0009]各进程的Memory占存分析模块,用于获取Memory占用数据的txt文件,再通过python程序对Memory占用数据的txt文件中的数据信息进行分析处理,转换成以时间标志为key值,各进程名和Memory数据信息字典为value值的字典,从而生成Memory数据分析的折线图表。
[0010]在一些可选的实施方案中,所述CPU数据信息实时监测模块包括CPU数据信息监测模块和CPU数据信息分析模块;
[0011]CPU数据信息监测模块,用于在获取到采集CPU数据信息指令后,python程序启动CPU数据采集线程自动调用adb shell dumpsys cpuinfo命令获取到各进程的CPU占用率数据,再通过adb shell

data+%Y%m%d%H%M%S

获取到时间数据,通过python数据处理生成各时刻的CPU数据信息字典,并设置时刻列表的buffer,对存储的CPU数据信息字典,根据最后一个时刻所获得的CPU占用率的数据排序,取前若干位作为实时观测数据,从而得到实时显示的动态CPU数据监测图;
[0012]CPU数据信息分析模块,用于在每次CPU数据采集中将CPU数据信息字典中的时刻作为折线图中的x轴的坐标列表,每个时刻中的CPU占用率为y坐标列表,将各进程名放入进程名列表中,通过对所得的CPU数据信息字典中的数据循环绘制各时刻的折线图。
[0013]在一些可选的实施方案中,所述Memory数据信息实时监测模块包括Memory数据信息监测模块和Memory数据信息分析模块;
[0014]Memory数据信息监测模块,用于在获取到采集Memory数据信息指令后,python程序启动Memory数据采集线程自动调用adb shell dumpsys

t 60meminfo命令获取到各进程的Memory数据占用大小,再通过adb shell

data+%Y%m%d%H%M%S

获取到时间数据,通过python数据处理生成各时刻的Memory数据信息字典,并设置时刻列表的buffer,对存储的Memory数据信息字典,根据最后一个时刻所获得的Memory数据占用大小排序,取前若干位作为实时观测数据,从而得到实时显示的动态Memory数据监测图;
[0015]Memory数据信息分析模块,用于在每次Memory数据采集中将Memory数据信息字典中的时刻作为折线图中的x轴的坐标列表,每个时刻中的Memory占用率为y坐标列表,将各进程名放入进程名列表中,通过对所得的Memory数据信息字典中的数据循环绘制各时刻的折线图。
[0016]在一些可选的实施方案中,所述CPU占用率分析模块,用于从CPU占用数据的txt文件中获取到CPU数据信息,将CPU数据信息通过QT绘制成CPU数据实时监测图或CPU数据分析折线图,其中,绘制的折线图中为所有CPU进程,通过对CPU数据字典中的进程名进行筛选,能够绘制所筛选的单独进程名,或者多个进程名的CPU数据,同时设置了鼠标联动、左键拖拽画布、滚轮缩放画布以及鼠标悬停二次窗口,方便查看分析。
[0017]在一些可选的实施方案中,所述Memory占存分析模块,用于从Memory占用数据的txt文件中获取到Memory数据信息,将Memory数据信息通过QT绘制成Memory数据实时监测图或Memory数据分析折线图,其中,绘制的折线图中为所有Memory进程,通过对Memory数据字典中的进程名进行筛选,能够绘制所筛选的单独进程名本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Android车机的CPU和Memory占用数据监测分析系统,其特征在于,包括:各进程的CPU数据信息实时监测模块,用于基于Android调试桥adb命令行工具,再通过调用dumpsys工具来获取android设备中各个进程的CPU占用数据信息,对所有获取到的CPU占用数据信息进行处理,生成CPU数据信息字典,存储得到CPU占用数据的txt文件,再通过python程序将CPU数据信息字典中的数据进行处理后实时显示到QT界面,形成实时监测变化的折线图,其中,CPU数据信息字典包括各个进程所处的时刻、进程名及该时刻的CPU占用率;各进程的Memory数据信息实时监测模块,用于基于Android调试桥adb命令行工具,再通过调用dumpsys工具来获取android设备中各个进程的Memory占用数据信息,对所有获取到的Memory占用数据信息进行处理,生成Memory数据信息字典,存储得到Memory占用数据的txt文件,再通过python程序将Memory数据信息字典中的数据进行处理后实时显示到QT界面,形成实时监测变化的折线图,其中,Memory数据信息字典包括各个进程所处的时刻、进程名及该时刻的Memory占用数据大小;各进程的CPU占用率分析模块,用于获取CPU占用数据的txt文件,再通过python程序对CPU占用数据的txt文件中的数据信息进行分析处理,转换成以时间标志为key值,各进程名和CPU数据信息字典为value值的字典,从而生成CPU数据分析的折线图表;各进程的Memory占存分析模块,用于获取Memory占用数据的txt文件,再通过python程序对Memory占用数据的txt文件中的数据信息进行分析处理,转换成以时间标志为key值,各进程名和Memory数据信息字典为value值的字典,从而生成Memory数据分析的折线图表。2.根据权利要求1所述的系统,其特征在于,所述CPU数据信息实时监测模块包括CPU数据信息监测模块和CPU数据信息分析模块;CPU数据信息监测模块,用于在获取到采集CPU数据信息指令后,python程序启动CPU数据采集线程自动调用adb shell dumpsys cpuinfo命令获取到各进程的CPU占用率数据,再通过adb shell

data+%Y%m%d%H%M%S

获取到时间数据,通过python数据处理生成各时刻的CPU数据信息字典,并设置时刻列表的buffer,对存储的CPU数据信息字典,根据最后一个时刻所获得的CPU占用率的数据排序,取前若干位作为实时观测数据,从而得到实时显示的动态CPU数据监测图;CPU数据信息分析模块,用于在每次CPU数据采集中将CPU数据信息字典中的时刻作为折线图中的x轴的坐标列表,每个时刻中的CPU占用率为y坐标列表,将各进程名放入进程名列表中,通过对所得的CPU数据信息字典中的数据循环绘制各时刻的折线图。3.根据权利要求1所述的系统,其特征在于,所述Memory数据信息实时监测模块包括Memory数据信息监测模块和Memory数据信息分析模块;Memory数据信息监测模块,用于在获取到采集Memory数据信息指令后,python程序启动Memory数据采集线程自动调用adb shell dumpsys

t 60meminfo命令获取到各进程的Memory数据占用大小,再通过adb shell

data+%Y%m%d%H%M%S

获取到时间数据,通过python数据处理生成各时刻的Memory数据信息字典,并设置时刻列表的buffer,对存储的Memory数据信息字典,根据最后一个时刻所获得的Memory数据占用大小排序,取前若干位作为实时观测数据,从而得到实时显示的动态Memory数据监测图;Memory数据信息分析模块,用于在每次Memory数据采集中将Memory数据信息字典中的
时刻作为折线图中的x轴的坐标列表,每个时刻中的Memory占用率为y坐标列表,将各进程名放入进程名列表中,通过对所得的Memory数据信息字典中的数据循环绘制各时刻的折线图。4.根据权利要求1或2所述的系统,其特征在于,所述CPU占用率分析模块,用于从CPU占用数据的txt文件中获取到CPU数据信息,将CPU数据信息通过QT绘制成CPU数据实时监测图或CPU数据分析折线图,其中,绘制的折线图中为所有CPU进程,通过对CPU数据字典中的进程名进行筛选,能够绘制所筛选的单独进程名,或者多个进程名的CPU数据,同时设置了鼠标联动、左键拖拽画布、滚轮缩放画布以及鼠标悬停二次窗口,方便查看分析。5.根据权利要求1或3所述的系统,其特征在于,所述Memory占存分析模块,用于从Memory占用数据的txt文件中获取到Memory数据信息,将Memory数据信息通过QT绘制成Memory数据实时监测图或Memory数据分析折线图,其中,绘制的折线图中为所有Memory进程...

【专利技术属性】
技术研发人员:宗雄娄坤帅林天化
申请(专利权)人:东风汽车集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1