一.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
存放到PC
adb logcat -s '*:E' > d:/1.log
6.使用手機打開app操作崩潰一次(如果想中途停止按下ctrl+c)
7.查看日志抓取文件,分不清楚是那個時間段所造成的后果
8.加入命令:-v time 就會顯示出時間
9.輸入命令
adb logcat -v time -s *:E > /mmt/sdcard/1.log(eg:adb logcat -v time -s appname:E>d:/1.log)
過濾日志級別
優先級是下面的字符,順序是從低到高:
V — 明細 verbose(最低優先級)
D — 調試 debug
I — 信息 info
W — 警告 warn
E — 錯誤 error
F — 嚴重錯誤 fatal
S — 無記載 silent
用法:
使用命令, 顯示10條 Error 以上級別的日志:
adb logcat 10 *:E
使用命令, 顯示全部Error
adb logcat *:E
輸出指定App日志
adb logcat <your package name>:<log level> *:S
adb logcat -v time -s app包名:E>d:/1.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 指定要查看的日志緩沖區,可以是system,events ,radio,main . 默認值是system和main 。
-c 清楚屏幕上的日志.
-d 輸出日志到屏幕上.
-f 指定輸出日志信息的,默認是stdout .
-g 輸出指定的日志緩沖區,輸出后退出.
-n 設置日志的最大數目.,默認值是4,需要和 -r 選項一起使用。
-r 每時輸出日志,默認值為16,需要和-f 選項一起使用.
-s 設置默認的過濾級別為silent.
-v 設置日志輸入格式