Android Historian安装使用

1、先安装docker

2、安装Historian,可使用如下docker镜像:

sudo docker run -p 9000:9999 registry.cn-hangzhou.aliyuncs.com/xyz10/android-battery-historian:stable-3.0

注:要使用sudo,否则会报permission error;如不想用sudo,那就要加上docker运行权限。

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.

3、然后浏览器打开:http://localhost:9000/,就可以看到界面。(速度有时也会比较慢,要耐心等待)

4、选择要分析的bugreport文件,点击submit,就可以看到分析结果。(显示的速度比较慢,要耐心等待)

5、各参数含义:

各个参数的意义:

CPU runing: cpu运行的状态

Kernel only uptime: 只有kernell运行?

Userspace wakelock: 用户空间申请的锁

Screen: 屏幕是否点亮

Top app: 当前在内存中的应用,按内存占用率排序

Activity Manager Proc: 活跃的用户进程

Crashes(logcat): 某个时间点出现crash的应用

Doze: 是否进入doze模式 Device

active: 和Doze相反

JobScheduler: 异步作业调度

SyncManager: 同步操作

Temp White List: 电量优化白名单

Phone call: 是否打电话

GPS: 是否使用GPS

Network connectivity: 网络连接状态(wifi、mobile是否连接)

Mobile signal strength: 移动信号强度(greatgoodmoderatepoor)

Wifi scan: 是否在扫描wifi信号

Wifi supplicant: 是否有wifi请求

Wifi radio: 是否正在通过wifi传输数据

Wifi signal strength: wifi信号强度

Wifi running: wifi组件是否在工作(未传输数据)

Wifi on: 同上

Audio: 音频子系统?

Camera: 相机是否在工作

Video:是否在播放视频

Foreground process: 前台进程

Package install: 是否在进行包安装

Package active: 包管理在工作

Battery level: 电池当前电量

Temperature: 电池温度

Plugged: 连接usb或者充电

Charging on: 在充电

Logcat misc: 是否在导出日志

补充:
CPU runing cpu运行的状态,是否被唤醒
Kernel only uptime 只有内核运行时间
Activity Manager Proc 活跃的用户进程
Mobile network type 网络类型
Mobile radio active 移动蜂窝信号 BP侧耗电
Crashes(logcat) 某个时间点出现crash的应用
Doze 是否进入doze模式
Device active 和Doze相反
JobScheduler 异步作业调度
SyncManager 同步操作
Temp White List 电量优化白名单
Phone call 是否打电话
GPS 是否使用GPS
Network connectivity 网络连接状态(wifi、mobile是否连接)
Mobile signal strength 移动信号强度(greatgoodmoderatepoor)
Wifi scan 是否在扫描wifi信号
Wifi supplicant 是否有wifi请求
Wifi radio 是否正在通过wifi传输数据
Wifi signal strength wifi信号强度(greatgoodmoderatepoor)
Wifi running wifi组件是否在工作(未传输数据)
Wifi on 同上
Audio 音频是否开启
Camera 相机是否在工作
Video 是否在播放视频
Foreground process 前台进程
Package install 是否在进行包安装
Package active 包管理在工作
Battery level 电池当前电量
Temperature 电池温度
Charging on 在充电
Logcat misc 是否在导出日志
--------------------- 

6、疑难问题解决

遇到提交bugreport文件后,不出现submit按钮,点击其他选项都没有任何反应的情况。通过打开浏览器开发者模式,刷新网页,抓取console的log如下:

GET http://www.gstatic.com/external_hosted/d3/v4/d3.js net::ERR_ABORTED 404 (Not Found)

通过google,知道是这个服务器上的d3.js库被下架拉。。。怎么办,这里推荐是用自己编译生成historian的方法来解决。

步骤:

主要参照:https://github.com/google/battery-historian 中 Building from source code的方法。

但是编译会出现报错如下(其实不管是什么错误,都可以用下面的方法试一试):

/home/ljj/work/src/github.com/google/battery-historian/third_party/closure-library/closure/goog/streams/full_test.js:492: ERROR - Parse error. '(' expected

1 error(s), 321 warning(s)

此时进行以下操作: 

cd third_party/closure-library/

git reset --hard v20170409

cd -

go run setup.go

Generating JS runfiles...

Generating optimized JS runfiles...

好了,没有报错了,继续按照步骤运行:go run cmd/battery-historian/battery-historian.go  默认端口为9999,大功告成!

原文地址:https://www.cnblogs.com/lingjiajun/p/10635687.html