Android 調(diào)試系列-Bugreport實戰(zhàn)篇

版權(quán)聲明:本文為作者原創(chuàng)愕乎,轉(zhuǎn)載必須注明出處唠亚。
轉(zhuǎn)載請注明出處:http://www.reibang.com/p/907028bac94a

Bugreport

上一篇文章Bugreport源碼篇主要是從源碼角度來分析了一下系統(tǒng)是如何生成Bugreport的凉袱,以及Bugreport的源碼實現(xiàn)版述。本篇主要從使用角度來對Bugreport中包含的內(nèi)容做相關(guān)介紹遥巴。也是基于Android 8.0版本婿失,由于Bugreport獲取的內(nèi)容很長,這里只能簡單劃分如下21塊內(nèi)容剿吻,簡單說說各部分log的信息窍箍。
注:這里拿小米手機dump的bugreport內(nèi)容來做介紹

1、系統(tǒng)build相關(guān)信息

========================================================
== dumpstate: 2018-11-10 00:22:54
========================================================

Build: OPM1.171019.011
Build fingerprint: 'xiaomi/tulip/tulip:8.1.0/OPM1.171019.011/8.11.9:user/release-keys'
Bootloader: unknown
Radio: 660_GEN_PACK-1.174030.1.174977.1
Network: (unknown)
Kernel: Linux version 4.4.78-perf+ (builder@mi-server) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #1 SMP PREEMPT Fri Nov 9 04:24:09 WIB 2018
Command line: ramoops_memreserve=4M rcupdate.rcu_expedited=1 console=ttyMSM0,115200,n8 androidboot.console=ttyMSM0 earlycon=msm_serial_dm,0xc170000 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 sched_enable_hmp=1 sched_enable_power_aware=1 service_locator.enable=1 swiotlb=1 androidboot.configfs=true androidboot.usbcontroller=a800000.dwc3 buildvariant=user root=/dev/mmcblk0p61 androidboot.verifiedbootstate=orange androidboot.keymaster=1  androidboot.veritymode=enforcing androidboot.bootdevice=c0c4000.sdhci androidboot.serialno=a02f873c androidboot.hwc=Global androidboot.hwversion=4.20.0 androidboot.hwlevel=0 androidboot.hwdefined=0 androidboot.baseband=sdm mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_nt36672a_tianma_fhdplus_video:config0:1:none:cfg:single_dsi androidboot.fpsensor=fpc androidboot.secureboot=0
Bugreport format version: 1.0
Dumpstate info: id=5 pid=27250 dry_run=0 args=/system/bin/dumpstate -s extra_options=

系統(tǒng)build信息如下:

  1. dumpstate:date
  2. Build: getprop ro.build.display.id
  3. Build fingerprint: getprop ro.build.fingerprint
  4. Bootloader: getprop ro.bootloader
  5. Radio:getprop gsm.version.baseband
  6. Network: getprop gsm.operator.alpha
  7. Kernel: dump_file /proc/version
  8. Command line: cat /proc/cmdline

系統(tǒng)運行時間:

------ UPTIME (uptime) ------
 00:22:55 up  4:42,  0 users,  load average: 44.10, 46.18, 42.83
------ 0.018s was the duration of 'UPTIME' ------
  1. up即為uptime:系統(tǒng)運行時長00:22:55
  2. idle time:系統(tǒng)空閑時長4:42
  3. user:用戶數(shù)0
  4. load average:cup 最近1min,5min,15min的平均負載情況.這個值的標準由cpu有多少個核來決定

2丽旅、下面列舉bugreport結(jié)果相關(guān)項

------ DUMPSYS MEMINFO (/system/bin/dumpsys -t 90 meminfo -a) ------
------ DUMPSYS CPUINFO (/system/bin/dumpsys -t 10 cpuinfo -a) ------
------ PROCRANK (procrank) ------
------ VIRTUAL MEMORY STATS (/proc/vmstat) ------
------ VMALLOC INFO (/proc/vmallocinfo) ------
------ SLAB INFO (/proc/slabinfo) ------
------ ZONEINFO (/proc/zoneinfo) ------
------ PAGETYPEINFO (/proc/pagetypeinfo) ------
------ BUDDYINFO (/proc/buddyinfo) ------
------ FRAGMENTATION INFO (/d/extfrag/unusable_index) ------
------ KERNEL WAKE SOURCES (/d/wakeup_sources) ------
------ KERNEL CPUFREQ (/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state) ------
------ KERNEL SYNC (/d/sync) ------
------ QSEE_LOG (cat /d/tzdbg/qsee_log) ------
------ TZ_LOG (cat /d/tzdbg/log) ------
------ PROCESSES AND THREADS (ps -A -T -Z -O pri,nice,rtprio,sched,pcy) ------
------ LIBRANK (librank) ------
------ PRINTENV (printenv) ------
------ NETSTAT (netstat -nW) ------

3椰棘、kernel log

內(nèi)核log信息

------ KERNEL LOG (dmesg) ------

4、lsof榄笙、map邪狞、block process wait-channels、process times

需要root權(quán)限
Skipping '/system/xbin/su root lsof' on user build.
------ 0.000s was the duration of 'LIST OF OPEN FILES' ------
------ SHOW MAP 1 (/init) (/system/xbin/su root showmap 1) ------
------ PROCESS TIMES (pid cmd user system iowait+percentage) ------
1     /init                                          5.77    5.28    0.00

5茅撞、system log

其實調(diào)用的是logcat system和main緩沖區(qū)的log
------ SYSTEM LOG (logcat -v threadtime -v printable -v uid -d *:v) ------
--------- beginning of crash
--------- beginning of system
--------- beginning of main

6外恕、event log

調(diào)用的是logcat events緩沖區(qū)的log
------ EVENT LOG (logcat -b events -v threadtime -v printable -v uid -d *:v) ------

7、radio log

調(diào)用的是logcat radio緩沖區(qū)的log
------ RADIO LOG (logcat -b radio -v threadtime -v printable -v uid -d *:v) ------

8乡翅、log statistics

記錄了main/radio/events/system/crash/security/kernel等各個log的使用情況
------ LOG STATISTICS (logcat -b all -S) ------
size/num main               radio              events             system             crash              security           kernel             Total
Total    500424586/6305580  5790723/77563      50150183/584809    70541684/485432    4748/7             0/0                6764031/100345     633675955/7553736
Now      255769/3591        3596015/51755      259743/2887        4187060/29223      4748/7                                256047/3682        8559382/91145
Logspan  51.296(44.3%)      4:43:15.343        4:38.941           1:58:43.109(6.9%)  1:12:55.143                                              4:43:51.288
Overhead 456865             6494295            421415             5823548            5140                                  462239             14029033
...

9鳞疲、vm trace

------ VM TRACES JUST NOW (/data/anr/dumptrace_EEGHQP: 2018-11-10 00:23:44) ------
----- pid 711 at 2018-11-10 00:23:31 -----
------ VM TRACES AT LAST ANR (/data/anr/anr_2018-11-09-23-50-52-579: 2018-11-09 23:51:14) ------
----- pid 31377 at 2018-11-09 23:50:54 -----

------ TOMBSTONE (/data/tombstones/tombstone_01: 2018-11-09 11:16:18) ------
若沒有
*** NO TOMBSTONES to dump in /data/tombstones/

10、network

------ NETWORK DEV INFO (/proc/net/dev) ------
------ QTAGUID NETWORK INTERFACES INFO (/proc/net/xt_qtaguid/iface_stat_all) ------
------ QTAGUID NETWORK INTERFACES INFO (xt) (/proc/net/xt_qtaguid/iface_stat_fmt) ------
------ QTAGUID CTRL INFO (/proc/net/xt_qtaguid/ctrl) ------
------ QTAGUID STATS INFO (/proc/net/xt_qtaguid/stats) ------

11蠕蚜、last kernel log

------ LAST KMSG (/proc/last_kmsg) ------

12尚洽、ip相關(guān)

------ NETWORK INTERFACES (ip link) ------
------ IPv4 ADDRESSES (ip -4 addr show) ------
------ IPv6 ADDRESSES (ip -6 addr show) ------
------ IP RULES (ip rule show) ------
------ IP RULES v6 (ip -6 rule show) ------
------ RT_TABLES (/data/misc/net/rt_tables: 2018-11-09 23:17:14) ------
------ ROUTE TABLE IPv4 (ip -4 route show table 255) ------
------ ROUTE TABLE IPv6 (ip -6 route show table 255) ------
------ ARP CACHE (ip -4 neigh show) ------
------ IPv6 ND CACHE (ip -6 neigh show) ------
------ MULTICAST ADDRESSES (ip maddr) ------


13、中斷向量表

這一塊跟android6.0相比少了INTERRUPTS

------ NETWORK DIAGNOSTICS (/system/bin/dumpsys -t 10 connectivity --diag) ------

14靶累、system property信息

------ SYSTEM PROPERTIES (getprop) ------
vold進程:管理和控制Android平臺外部存儲設(shè)備腺毫,包括SD插撥癣疟、掛載、卸載潮酒、格式化等睛挚;vold進程接收來自內(nèi)核的外部設(shè)備消息。
------ VOLD DUMP (vdc dump) ------
------ SECURE CONTAINERS (vdc asec list) ------
------ STORAGED TASKIOINFO (storaged -u) ------
------ FILESYSTEMS & FREE SPACE (df) ------
Filesystem                                           1K-blocks    Used Available Use% Mounted on
tmpfs                                                  1895568     764   1894804   1% /dev
/dev/block/platform/soc/c0c4000.sdhci/by-name/system   2982364 2679276    255740  92% /system
/dev/block/platform/soc/c0c4000.sdhci/by-name/vendor   1999196  727564   1234608  38% /vendor
tmpfs                                                  1895568       0   1895568   0% /mnt
none                                                   1895568       0   1895568   0% /sys/fs/cgroup
/dev/block/bootdevice/by-name/cust                      822168  782032     15236  99% /cust
/dev/block/bootdevice/by-name/modem                     196528  109488     87040  56% /firmware
/dev/block/bootdevice/by-name/bluetooth                  65488     480     65008   1% /bt_firmware
/dev/block/mmcblk0p60                                   237536     504    229172   1% /cache
/dev/block/dm-0                                       52950544 3700556  49102532   8% /data
/data/media                                           52950544 3700556  49102532   8% /storage/emulated

15急黎、last radio log

------ LAST RADIO LOG (parse_radio_log /proc/last_radio_log) ------

16扎狱、thermal log / blacklights

------ THERMAL LOG ------
battery=43000
backlight_therm=44
emmc_therm=47
pa_therm0=44
pm660_tz=47560
pm660l_tz=37000
msm_therm=49
quiet_therm=46
xo_therm=45
tsens_tz_sensor0=525
tsens_tz_sensor1=528
tsens_tz_sensor2=538
tsens_tz_sensor3=545
tsens_tz_sensor4=535
tsens_tz_sensor5=541
tsens_tz_sensor6=522
tsens_tz_sensor7=551
tsens_tz_sensor8=516
tsens_tz_sensor9=519
tsens_tz_sensor10=509
tsens_tz_sensor11=516
tsens_tz_sensor12=545
tsens_tz_sensor13=519
limits_sensor-00=0
limits_sensor-01=0
bms=43000
GLM_soc=0
LLM_cp1-=0
LLM_cp0-=0

背光信息
------ BACKLIGHTS ------
LCD brightness=*** Error dumping /sys/class/leds/lcd-backlight/brightness: Permission denied
Button brightness=*** Error dumping /sys/class/leds/button-backlight/brightness: No such file or directory
Keyboard brightness=*** Error dumping /sys/class/leds/keyboard-backlight/brightness: No such file or directory
ALS mode=*** Error dumping /sys/class/leds/lcd-backlight/als: Permission denied
LCD driver registers:
*** Error dumping /sys/class/leds/lcd-backlight/registers: Permission denied

17、Binder相關(guān)

------ BINDER FAILED TRANSACTION LOG (/sys/kernel/debug/binder/failed_transaction_log) ------
------ BINDER TRANSACTION LOG (/sys/kernel/debug/binder/transaction_log) ------
------ BINDER TRANSACTIONS (/sys/kernel/debug/binder/transactions) ------
------ BINDER STATS (/sys/kernel/debug/binder/stats) -----
------ BINDER STATE (/sys/kernel/debug/binder/state) ------
緊接著需要root,user build不會有這個log
------ DUMP VENDOR RIL LOGS (/system/xbin/su root vril-dump) ------

18勃教、dumpsys相關(guān)

通過dumpsys -l可查看系統(tǒng)所有服務(wù)淤击,不帶參數(shù)的dumpsys命令會輸出系統(tǒng)中所有的服務(wù):每個服務(wù)開頭信息如下:
========================================================
== Android Framework Services
========================================================
------ DUMPSYS (/system/bin/dumpsys -t 10 --skip meminfo cpuinfo) ------
DUMP OF SERVICE DisplayFeatureControl:
DUMP OF SERVICE DockObserver:
DUMP OF SERVICE SurfaceFlinger:
DUMP OF SERVICE
...

19、dumpsys checkin相關(guān)

dumpsys電池統(tǒng)計故源,內(nèi)存污抬、網(wǎng)絡(luò)統(tǒng)計、進程绳军、使用情況印机、包這些統(tǒng)計類信息

========================================================
== Checkins
========================================================
------ CHECKIN BATTERYSTATS (/system/bin/dumpsys -t 30 batterystats -c) ------
------ CHECKIN MEMINFO (/system/bin/dumpsys -t 30 meminfo --checkin) ------
------ CHECKIN NETSTATS (/system/bin/dumpsys -t 30 netstats --checkin) ------
------ CHECKIN PROCSTATS (/system/bin/dumpsys -t 30 procstats -c) ------
------ CHECKIN USAGESTATS (/system/bin/dumpsys -t 30 usagestats -c) ------
------ CHECKIN PACKAGE (/system/bin/dumpsys -t 30 package --checkin) ------

20、dumpsys app相關(guān)

dumpsys會收集activity信息以及service和provider信息门驾。

========================================================
== Running Application Activities
========================================================
------ APP ACTIVITIES (/system/bin/dumpsys -t 30 activity -v all) ------
========================================================
== Running Application Services
========================================================
------ APP SERVICES (/system/bin/dumpsys -t 30 activity service all) ------
========================================================
== Running Application Providers
========================================================
------ APP PROVIDERS (/system/bin/dumpsys -t 30 activity provider all) ------

21耳贬、Dropbox相關(guān)

Dropbox會收集system server crash 和 system app crash 信息

========================================================
== Dropbox crashes
========================================================
------ DROPBOX SYSTEM SERVER CRASHES (/system/bin/dumpsys -t 30 dropbox -p system_server_crash) ------
------ DROPBOX SYSTEM APP CRASHES (/system/bin/dumpsys -t 30 dropbox -p system_app_crash) ------

總結(jié)

從上面的總結(jié)和6.0的源碼對比來看,總體log的打印順序都沒有明顯變化猎唁,只是增加了一些信息。開發(fā)者在根據(jù)bugreport分析問題的時候可以通過搜索關(guān)鍵字來快速找到有用信息顷蟆,比如當你想了解meminfo信息的時候诫隅,你可以搜索DUMPSYS MEMINFO來找到各個進程所占用內(nèi)存的信息。又或者當你想查詢摸一個app的信息時帐偎,你可以搜索package [包名]來找到對應的app信息逐纬。總是削樊,還需要大家多多使用豁生,多多熟練就能快速找到你想要的信息。

參考:
http://gityuan.com/2016/06/11/bugreport-2/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末漫贞,一起剝皮案震驚了整個濱河市甸箱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌迅脐,老刑警劉巖芍殖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異谴蔑,居然都是意外死亡豌骏,警方通過查閱死者的電腦和手機龟梦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來窃躲,“玉大人计贰,你說我怎么就攤上這事〉僦希” “怎么了躁倒?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長刘绣。 經(jīng)常有香客問我樱溉,道長,這世上最難降的妖魔是什么纬凤? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任福贞,我火速辦了婚禮,結(jié)果婚禮上停士,老公的妹妹穿的比我還像新娘挖帘。我一直安慰自己,他們只是感情好恋技,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布拇舀。 她就那樣靜靜地躺著,像睡著了一般蜻底。 火紅的嫁衣襯著肌膚如雪骄崩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天薄辅,我揣著相機與錄音要拂,去河邊找鬼。 笑死站楚,一個胖子當著我的面吹牛脱惰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播窿春,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼拉一,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了旧乞?” 一聲冷哼從身側(cè)響起蔚润,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎尺栖,沒想到半個月后抽碌,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年货徙,在試婚紗的時候發(fā)現(xiàn)自己被綠了左权。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡痴颊,死狀恐怖赏迟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蠢棱,我是刑警寧澤锌杀,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站泻仙,受9級特大地震影響糕再,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜玉转,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一突想、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧究抓,春花似錦猾担、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至橘茉,卻和暖如春工腋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背畅卓。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工擅腰, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人髓介。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像筋现,于是被迫代替她去往敵國和親唐础。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 版權(quán)聲明:本文為作者原創(chuàng)矾飞,轉(zhuǎn)載必須注明出處一膨。轉(zhuǎn)載請注明出處:http://www.reibang.com/p/2...
    凡星軌跡閱讀 15,322評論 0 53
  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom閱讀 2,690評論 0 3
  • Tcp/IP通信也是不安全的,在傳輸?shù)臅r候也可能出現(xiàn)漏洞 查看正在運行的進程 adb shell ps -A |g...
    遠遠飄著云閱讀 4,343評論 0 0
  • 一洒沦、Bugreport 文章Bugreport源碼篇(一)從源碼角度闡釋了Bugreport豹绪,那么本文則是從實戰(zhàn)角...
    HelloWorld__閱讀 13,902評論 2 5
  • 明早6點車到成都,今天上午去見陳英,中午在思晨那里吃飯瞒津,12:40到電影院看電影蝉衣,久違的《戰(zhàn)狼2》。 沒有我想象那...
    三寶媽肖雪強閱讀 151評論 0 2