Android 日誌獲取總結

Android 日誌獲取總結

Android開發中遇到問題經常需要分析日誌,下面介紹如何獲取日誌進行分析。

Android日誌:

1、如果App中已經做了定向處理,從指定的目錄中獲取即可。

定向處理指的是app中做了日誌寫入到自己指定的文件中。

2、但是如有沒有定向處理,那麼就要學會從系統中獲取到日誌。

從系統中查看日誌也有兩種方式

(1)使用adb logcat獲取日誌

adb logcat 命令詳解:https://blog.csdn.net/wenzhi20102321/article/details/81058196

adb獲取日誌可以使用cmd窗口查看,
//格式1:打印默認日誌數據
adb logcat 

//格式2:需要打印日誌詳細時間的簡單數據
adb logcat -v time

//格式3:需要打印級別爲Error的信息
adb logcat *:E

//格式4:需要打印過濾MainActivity的日誌
adb logcat | grep MainActivity

//其他,清除緩存日誌
adb logcat -c

也可以把日誌文件重定向到固定的位置

//將日誌保存到電腦固定的位置,比如D:\log.txt
adb logcat -v time >D:\log.txt

直接定向獲取logcat日誌,可以讀取到緩存的日誌

如果是要獲取準備發生問題的日誌,一般先使用logcat -c清除日誌,再獲取。

當然,爲了更快獲取日誌,我們最好是寫一些簡單的腳本bat直接執行即可獲取到日誌。
logcat文件

(2)從系統指定目錄中獲取android日誌

下面日誌的獲取是需要手機root權限的,一般時候系統級開發定位問題!

Android系統完整的日誌文件目錄:/data/log/android_logs/
系統或者APP發生ANR時的log日誌文件目錄:/data/anr
C/C++代碼發生崩潰時的日誌文件目錄: /data/tombstones 存
各種APP崩潰、ANR、Android系統死機、重啓、C/C++模塊崩潰等場景的日誌文件目錄:/data/system/dropbox 存放。

dropbox目錄下的文件,其文件名中@後面的數字是問題發生時的設備的UTC時間,需要轉換成標準時間。
例如:[email protected],1583313946748這個UTC時間轉換成標準時間就是2020/3/4 17:25:48。
注意:如果設備時間不準,那麼轉換過來的時間也會不準。

下面提供一下簡單的腳本方便點擊即可獲取日誌文件

https://download.csdn.net/download/wenzhi20102321/12376556

logcat.bat

adb shell logcat -G 2m
adb logcat -v threadtime >"%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%log.txt"
pause

先清除日誌再log.bat

adb shell logcat -G 2m
adb logcat -c
adb logcat -v threadtime >"%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%log.txt"
pause

pull_android_logs.bat

adb remount
adb wait-for-device
adb devices
adb pull /data/log/android_logs/ "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%Log"
pause

delete_android_logs.bat

adb remount
adb shell rm -rf /data/log/android_logs/
pause

pull_anr_tombs_others_log.bat

adb remount
adb wait-for-device
adb devices
adb pull /data/log/android_logs/ "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%AndroidLog"
adb pull /data/anr "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%anrLog"
adb pull /data/tombstones "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%tombstonesLog"
adb pull /data/system/dropbox /data/tombstones "%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%tombstonesLog"
pause

共勉:五一快樂!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章