android logcat抓取app日誌的方法

一.logcat抓log方法:adb logcat命令,可以加條件過濾

1.安裝SDK(參考android sdk環境安裝)

2.使用數據線鏈接手機,在手機助手的sdcard中建立一個1.log的文件或在抓日誌時直接導出到電腦位置

3.程序運行cmd,進入到含有adb.exe目錄

4.輸入adb devices 查看設備是否連上

5.輸入抓取命令:adb logcat -s *:E > /mmt/sdcard/1.log或logcat -s '*:E' >d:/1.log,

6.使用手機打開app操作崩潰一次(如果想中途停止按下ctrl+c)

7.查看日誌抓取文件,分不清楚是那個時間段所造成的後果

8.加入命令:-v time 就會顯示出時間

9.輸入命令logcat -v time -s *:E > /mmt/sdcard/1.log(eg:adb logcat -v time -s appname:E>d:/1.log)

10.查看結果

ps:

adb logcat -v time -s appname:E>d:/1.log

-v 顯示日誌格式  -v time 以時間爲顯示格式

-s 默認過濾,不顯示默認tag。系統把tag的默認過濾級別是設置爲Verbos,tag需要顯示。如果設置-S等同於*:V

appname:E 顯示appname操作中優先級大於等於“error”的日誌


二、log過濾--根據Log信息級別 

• V-(verbose) -明細 (最低優先級 D-(debug)-調試• I-(information)-信息• W-(warning)-警告• E-(error)-錯誤

• F — 嚴重錯誤• S — 無記載 (最高優先級,沒有什麼會被記載)

三、

log過濾-

log過濾器使用(

adb logcat tag:priprity)

過濾器表達式的格式是tag:priority ... ,其中tag是標記(可以是具體的,*表示所有), priority是最小的優先級,可以是組合

adblogcat ActivityManager:I MyApp:D *:S

adblogcat * :W -----所有優先級大於等於“warning”的日誌

adblogcat * :E -----所有優先級大於等於“error”的日誌

四、log輸出-log控制日誌格式 adb logcat -v 格式

brief — 顯示優先級/標記和原始進程的PID (默認格式)

process — 僅顯示進程PIDtag — 僅顯示優先級/標記

thread — 僅顯示進程:線程和優先級/標記

raw — 顯示原始的日誌信息,沒有其他的元數據字段

time — 顯示日期,調用時間,優先級/標記,PID

long —顯示所有的元數據字段並且用空行分隔消息內容

eg:adb logcat -v thread 


五.log輸出-附加緩衝區:adb logcat -b 

radio — 查看包含在無線/電話相關的緩衝區消息

events — 查看事件相關的消息

main — 查看主緩衝區 (默認緩衝區)

adb logcat -b  radio

什麼也不加代表默認緩衝

六.log輸出-log選項列表

-b <buffer> 指定要查看的日誌緩衝區,可以是system,events ,radio,main . 默認值是system和main 。

-c 清楚屏幕上的日誌. 

-d 輸出日誌到屏幕上. 

-f <filename> 指定輸出日誌信息的<filename>,默認是stdout . 

-g 輸出指定的日誌緩衝區,輸出後退出. 

-n <count> 設置日誌的最大數目<count>.,默認值是4,需要和 -r 選項一起使用。 

-r <kbytes> 每<kbytes>時輸出日誌,默認值爲16,需要和-f 選項一起使用. 

-s 設置默認的過濾級別爲silent. 

-v <format> 設置日誌輸入格式

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