ChkBugReport是一款可以快速地檢查輸出的Android錯誤報告的工具,這款軟件可以從Android錯誤報告工具輸出的大量文本文件中進行語義分析,然后解析成一個更具有可讀性的文檔,分析起來更加容易。
可抽取bugreport信息:
1、Stacktraces ChkBugReport可以從bugreport中解析出輸出bugreport的最后時刻、導(dǎo)致ANR時刻甚至更多時刻的堆棧信息。在例子中你可以看到進程的優(yōu)先級和策略都已標(biāo)示出來,堆棧中耗時的部分顏色是黑紅,一些違反Strict Mode的部分(比如主線程中使用數(shù)據(jù)庫)顏色標(biāo)記為亮紅。如果這個線程死鎖,在報告的Errors將會出現(xiàn)。
2、Logs 這部分是對system、main和kernel日志的分析,在這里你可以看到每個進程內(nèi)存使用圖、那個程序產(chǎn)生的log最多、Activity的啟動耗時、數(shù)據(jù)庫操作耗時統(tǒng)計、對象被鎖定時間、AIDL調(diào)用時間、Activity和Service的生命周期及其在內(nèi)存中使用頻率等等
3、Packages ChkBugReport解析bugreport中存儲的packages.xml并展示一系列的packages、user ids和 permissions。
4、Processes 操作app過程中產(chǎn)生的系統(tǒng)事件日志、內(nèi)存使用信息等等
5、Battery statistics 電池使用統(tǒng)計信息
6、CPU Frequency statistics CPU頻率統(tǒng)計信息
7、Raw data 被分割成小段的原始數(shù)據(jù)
使用方法:
1、分析Bugreport文件
java -jar $HOME/Downloads/chkbugreport.jar $HOME/tmp/bugreport.txt
你也可以把chkbugreport.jar加到path下,然后這樣使用,這將根據(jù)你的bugreport數(shù)據(jù)輸出一個分析結(jié)果目錄bugreport_out。
chkbugreport thebugreport.txt
你可以使用如下命令取得bugreport:
adb bugreport > bugreport.txt
2、分析BugReport的部分數(shù)據(jù)
當(dāng)然你可以使用ChkBugReport分析bugreport的部分數(shù)據(jù)比如/data/anr/traces.txt
chkbugreport -sl:the_system_log.txt -sa:traces.txt dummy
這將輸出分析結(jié)果到dummy_out。
3、分析profile文件
你甚至可以使用ChkBugReport分析traceview生成的數(shù)據(jù)
chkbugreport -t something.prof
4、分析monkey文件
chkbugreport -t something.profjava -jar chkbugreport-0.4-164.jar output_file_name -mo:monkey.log
chkbugreport的常見參數(shù)如下: