could not parse aggregated battery stats

  • 之前有一篇文章Android5.0系统耗电分析中提到用Battery Historian来分析耗电问题,但是在最近几次用Battery Historian2.0分析的时候点击Submit按钮analyse成功后,进入界面的报错“Note: Could not parse aggregated battery stats.”,点击error按钮,出现如下提示:

    也就是说你查看不了Battery Historian2.0视图,可能在解析的时候报错了,那么我们可以不查看Battery Historian2.0的分析视图,只查看Battery Historian1.0的,可以进入…\battery-historian\scripts目录,在这里面你就看到了“historian.py”这个就是把bugreport.txt转化成html文件的py实现,然后在这里目录打开cmd之下一下命令:python historian.py -a bugreport.txt > battery.html就可以看到在这个目录下生成了html文件,然后用谷歌浏览器直接打开html文件即可查看耗电的一些信息,但是个人感觉Battery Historian1.0的耗电分析视图没有2.0来的详细和直观,以下为截图:

    Battery Historian1.0耗电分析视图:

    但是我对这个问题“could not parse aggregated battery stats”感觉特别不爽,因为我用我们android系统5.0(MTK提供)的user debug版本手表(root)都可以正常使用,为啥一换到root过的手机,还是google官方的6.0系统就不行了呢?于是乎,一顿google,记住。一定要用google,不要用百度,用百度你用换搜索不到重点。在这里我找到灵感:could not parse aggregated battery stats,这里面有很多Battery Historian的issu问答,我们关注的是:

    1. Definitely not server-side, it means your bugreport is invalid. Yes, a bug in the ROM is likely the cause. It may be possible to fix the report in a text editor though. There will likely be two lines with “,vers,” lines in them. If you delete one of them the first error should disappear. Same should be the case for “,bt,”. If you look for lines with that in it there should be two of them. Delete one and things might work.(大概的意思是说bugreport文件不可用,可能是rom的一个bug导致的,那么要解决这个bug就找到bugreport.txt文件下的“,vers,”发现有两个这个东西,那么删除其中一个,然后再搜“,bt,”也有两个,也删除其中一个,当然,删除哪一个?)
    2. It definitely helps for the errors, even though it doesn’t fix the fact I only see the Historian-tab. I now get a new error about ‘global network field already exists’, I’ll try to fix this in the same way. I’ll also try another nightly, maybe this is an incidental bug.(当你删除了一个“,vers,”后,你会发现又报错“global network field already exists”)
    3. If there are a lot of these you can look through this. The “,bt,” and “,vers,” are section identifiers. If you’re seeing “global network field already exists”, you should look for “,gn,”.
      I’ll also add that you should probably delete the first line in the case of battery stuff and the second line in the case of version. I think they should probably be ordered chronologically but really there shouldn’t be multiple at all so who knows.(针对2中问提,找到“,bt,”也发现有两个,删除其中一个,这个“,bt,”应该是紧跟着刚才删除的“,vers,”,“,gn,”也是如此,也要删除多余的那一行)
      至此:按照如上三个步骤我们已经在bugreport.txt文件中的这三行内容:
9,0,i,vers,15,133,MOB31K,MOB31K9,0,l,bt,0,0,0,238067037,173720359,1483685378198,0,09,0,l,gn,0,0,0,0,0,0,0,0

很可惜的是,依然报错:

但是很明显,报错变少了,说明我们以上做的修改还有有点用的,于是我预测是不是还有些东西没有删除掉,经过上面的一个过程下来,隐约感觉到是不是由于bugreport.txt文件里面有些参数重复了导致视图解析不出来,例如“,vers,”,“,bt,”,“,gn,”都是重复的,然后删除掉一行,继续google,证实了这个问题:Battery Historian is complaining because it only expects one log per file.,于是我就再去bugreport.txt文件中找,是不是还有类似的参数没有删除呢?在刚才删除的那三行下面我看到这么一些东西:

9,0,i,vers,15,133,MOB31K,MOB31K9,0,l,bt,0,0,0,238067037,173720359,1483685378198,0,09,0,l,gn,0,0,0,0,0,0,0,0
// 以上三行是已经删除的
9,0,l,gwfl,0,0,0,0,0,09,0,l,gble,0,0,0,09,0,l,m,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,br,0,0,0,0,09,0,l,sgt,0,0,0,0,09,0,l,sst,09,0,l,sgc,0,0,0,0,09,0,l,dct,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,dcc,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wst,0,0,0,0,0,0,0,09,0,l,wsc,0,0,0,0,0,0,0,09,0,l,wsst,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wssc,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wsgt,0,0,0,0,09,0,l,wsgc,0,0,0,0,09,0,l,dc,0,0,0,0

奇怪的是后面跟的参数都是0,觉得不太对劲,找到那个没有删除的“,bt,”和“,bt,”看了下:

9,0,l,bt,0,4034182,3304371,6220490,5490679,1483917201211,1405309,6754999,0,l,gn,7688100,795463,27082229,2909975,7858,7960,26650,284799,0,l,gwfl,4034182,4034182,1679358,29311,32558,09,0,l,gble,0,0,0,09,0,l,m,2628873,0,5225,449536,1002609,34,2620589,0,12,0,0,0,0,19,252259,0,l,br,468770,582304,1345121,154945,777339,0,l,sgt,2612,43469,782137,2361194,8447709,0,l,sst,09,0,l,sgc,2,7,44,157,1609,0,l,dct,2910827,0,0,0,0,0,0,0,0,0,0,0,0,1123355,0,0,09,0,l,dcc,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,09,0,l,wst,0,0,0,0,0,0,0,09,0,l,wsc,0,0,0,0,0,0,0,09,0,l,wsst,0,149908,0,0,880862,0,15338,1043,13159,104,2973768,0,0...后面太长了,这里就省略了...

其实“,vers,”,“,bt,”和“,bt,”都是在—— CHECKIN BATTERYSTATS (dumpsys batterystats -c) ——下的,只不过这里这三行并不连续,中间穿插一大段数据内容,而刚才删除的那三行却是连续的,而且后面带的参数都是0,经过比较发现,后面带的参数本应该是uid,进程名等参数,这些参数是不可能都为0的所以就猜测刚才删除的那些数据可能是异常数据,也许就是这里导致视图分析报错,于是就把那一整段都全部删除:

9,0,i,vers,15,133,MOB31K,MOB31K9,0,l,bt,0,0,0,238067037,173720359,1483685378198,0,09,0,l,gn,0,0,0,0,0,0,0,09,0,l,gwfl,0,0,0,0,0,09,0,l,gble,0,0,0,09,0,l,m,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,br,0,0,0,0,09,0,l,sgt,0,0,0,0,09,0,l,sst,09,0,l,sgc,0,0,0,0,09,0,l,dct,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,dcc,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wst,0,0,0,0,0,0,0,09,0,l,wsc,0,0,0,0,0,0,0,09,0,l,wsst,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wssc,0,0,0,0,0,0,0,0,0,0,0,0,09,0,l,wsgt,0,0,0,0,09,0,l,wsgc,0,0,0,0,09,0,l,dc,0,0,0,0

然后保存下bugreport.txt,在去submit分析,发现居然成功的显示出视图了:

到这里有两个tab页面,一个是2.0的,一个是1.0的,1.0的tab显示会被下面的覆盖掉,而1.0关于wake lock唤醒信息比较详细,所以可以用python historian.py -a bugreport.txt > battery.html命令单独转换生成1.0的分析视图,这个上面已经提及,好啦,问题解决!

Battery Historian2.0使用过程中遇到的一些问题相关推荐

  1. Vmare horizon client 5.0安装过程中自动取消

    Vmare horizon client 5.0安装过程中自动取消 从vmare官网下载的vmare horizon client 5.0安装过程中出现自动取消安装.希望本篇文档可能会对您有所帮助,但 ...

  2. 西门子博途安装服务器未响应,博途V13.0安装过程中出错

    悬赏: 1西币 | 解决时间:2016-05-21 19:31 博途V13.0安装过程中出错 BUNDLE: SIMATIC STEP 7 Professional V13.0 SEBU Versio ...

  3. 关于VC++6.0 安装过程中提出vssetup.tff,不能删除的问题及在WIN7兼容性设置问题。

    1)在我们经常WIN7系统里面的重新安装VC++6.0软件的时候,会有出现vssetup.tff文件不能删除的问题.网络上有很多人提出的建议删除的方法.用上360强力删除,或者进入什么安全模式删除,等 ...

  4. Apache Atlas 2.0.0编译过程中遇到的问题及解决方案

    Atlas安装依赖: 1.Maven 3.5+,下载安装包解压后配置环境变量即可,详细步骤请自行百度,下载地址:http://maven.apache.org/download.cgi 2.Apach ...

  5. tracker_benchmark_v1.0配置过程中出现的问题及解决方案

    毕业设计是CV方向的,一直在调试tracker_benchmark_v1.0的代码,遇到了很多的问题,本篇博客记录我遇到的问题和解决的办法,也许还有错误的地方,欢迎大家一起讨论研究~ 一.介绍和注意事 ...

  6. Rancher 2.0部署过程中常见问题分析与解决

    本文是Rancher 2.0部署与使用过程中常见的问题及其解决方法,多数问题整理收集自Rancher官方技术交流群内用户的提问与反馈.欢迎扫描文末二维码,添加Rancher小助手为好友,加群获得更多技 ...

  7. Openvibe3.0安装过程中遇到Python安装错误

    如果你安装Openvibe3.0过程中,python3没有安装成功,打开Openvibe designer里面的python代码实例,软件会报错,并且会以红色示警,经过我研究发现有两个地方会造成此问题 ...

  8. U盘启动器安装双系统(Win10+RHEL8.0)过程中的问题总结- 安装源出现设置基础软件仓库时出错、安装目的地中识别不出未分配的空闲空间问题、iso写入U盘做启动器的工具

    前言         心有余力之际,闲暇之时,捣鼓了一下双系统,一来操作使用Linux操作系统体验感更强,熟悉性越发提高.经过一天的深入研究和大量的坑,查阅了大量的资料和教程,踩过了一个又一个深坑,经 ...

  9. Battery Historian2.0 windows下安装

    Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Batter ...

最新文章

  1. 老毛桃u盘启动pe重建mbr图文教程
  2. 共享库报错问题及解决方案
  3. 【译文】MySQL InnoDB 事物模型
  4. python正则匹配_python 正则表达式详解
  5. python 字符编码的两种方式写法:# coding=utf-8和# -*- coding:utf-8 -*-
  6. CSS美化网页元素大全
  7. Android Flow遇见Retrofit网络请求实践
  8. Android 软键盘自动弹出和关闭
  9. 信息学奥赛一本通 1150:求正整数2和n之间的完全数
  10. ae自动曝光_拾光剪影|手机摄影对焦曝光与Ae使用
  11. Android 实现点击按钮弹出日期选择器与时间选择器
  12. Navicat使用教程:获取MySQL中的行数(第1部分)
  13. 互融云工业品电商系统上线:科技助力互联网与实体经济深度融合
  14. 1Cr11Ni2W2MoV
  15. Fault 异常或陷阱 分析
  16. 关于适配,我想说。。。
  17. t3计算机名带特殊符号,带特殊符号的网名,带特殊符号的网名
  18. ExtJS各个版本官方API文档
  19. 在外企必会的英文单词
  20. 部分地区无法访问网站

热门文章

  1. STC89C52单片机定时器及中断系统的介绍以及代码示例
  2. 【C#】winform软件UI设计模板
  3. AVL树的理解及自写AVL树
  4. jenkins 一键式部署的工具
  5. 怎样通过修改folder.htt来实现文件夹加密码
  6. Windows操作系统及其应用
  7. 设置 SSH 通过密钥登录
  8. airflow使用macros
  9. 计算机毕业设计Java“臻宝”书画竞拍系统(源码+系统+mysql数据库+lw文档)
  10. 深度学习时间序列预测项目案例数据集介绍