一、Log分类:Android日志主要分为kernel、radio、event、main这四种log。

1、kernel log

kernel log属于Linux内核的log ,可以通过读取/proc/kmsg或者通过串口来抓取。

adb 抓取kernel log的命令如下(需要有root权限):

adb shell cat /proc/kmsg > e://kernel.log

2、radio log

-抓取Android RIL层 log,在调试Android通信方面的代码时,这个Log非常关键。抓取命令如下:

adb logcat -b radio >e://radio.log

3、main log

main log和我们在eclipse里通过DDMS中看到的log是一致的。抓取命令如下:

adb logcat -b main >e://main.log

4、event Log

event log属于system log,平时可以跟在main log之后。抓取命令如下:

adb logcat -b event -v time > e://event.log    (-v time表示在log中加入每条log发生的时间)

5、完整Log

adb logcat -b选项是可以复用的,因此我们抓取所有Log的命令就是复用了-b选项。抓取命令如下:

adb logcat -b main -b system -b radio -b events -v time > e://all.log

6、android输出的每一条日志都有一个标记和优先级与其关联。

优先级是下面的字符,顺序是从低到高:

V — 明细 verbose(最低优先级)

D — 调试 debug

I — 信息 info

W — 警告 warn

E — 错误 error

F — 严重错误 fatal

S — 无记载 silent

二、过滤log

1、清除缓存的log信息

adb logcat -c

2、使用I,V,D,E,F,W 等过滤

adb logcat *:I    //显示所有优先级大于等于“info”的日志

adb logcat *:V//显示所有优先级大于等于“verbose”的日志

adb logcat ActivityManager:I  *:S  //仅输出标记为“ActivityManager”且优先级大于等于“Info”的日志

3、分类展示

adb logcat -s papaya  //显示 papaya 的日志信息

adb logcat -v tag  //按照标签来打印日志信息

adb logcat -v thread  // 显示 I,D,E等日志类型的进程ID、线程ID

4、grep 过滤(windows 可用find代替)

adb logcat | grep PID  //根据进程id来过滤

adb logcat | grep -i myapp  //根据字符串来过滤,并忽略大小写

adb logcat | grep "^..MyApp"  //仅匹配 tag 过滤, tag 是一行开头的第三个字符开始

更多相关文章

  1. Android(安卓)emoji表情处理
  2. 抓取Android(安卓)WebView截屏
  3. 9.5android线程优先级,go和rust比较
  4. ListView的Item中有CheckBox,导致OnItemClick不响应的解决办法
  5. Android(安卓)Service简介
  6. logcat使用方法
  7. Android中广播优先级设置
  8. Android(安卓)软件测试日志文件抓取
  9. Android(安卓)APP测试的日志文件抓取

随机推荐

  1. Android(安卓)手机:自由的代价
  2. 《android framework常用api源码分析》之
  3. 重看android(二) android启动
  4. android之单元测试——上
  5. 利用Android回调机制对Dialog进行简单封
  6. android 基础概述
  7. Android程序员必看之Android六大优势
  8. android makefile(android.mk)分析(序)
  9. Android架构组件四 Android(安卓)Archite
  10. android,内存优化详解