Logcat过滤及常见用法整理

摘要:
所以,logcatappname:v是不能成功过滤log的。

Usage:logcat [options] [filterspecs]

options include:
-s Set default filter to silent.
Like specifying filterspec '*:s'
-f <filename> Log to file. Default to stdout
-r [<kbytes>] Rotate log every kbytes. (16 if unspecified). Requires -f
-n <count> Sets max number of rotated logs to <count>, default 4
-M <1,0> Set enable copy(Move) the log to oms_log_path
-v <format> Sets the log print format, where <format> is one of:

brief process tag thread raw time threadtime long

-c clear (flush) the entire log and exit
-d dump the log and then exit (don't block)
-g get the size of the log's ring buffer and exit
-b <buffer> request alternate ring buffer
('main' (default), 'radio', 'events')
-B output the log in binary

filterspecs are a series of
<tag>[:priority]

where <tag> is a log component tag (or * for all) and priority is:
V Verbose
D Debug
I Info
W Warn
E Error
F Fatal
S Silent (supress all output)

'*' means '*:d' and <tag> by itself means <tag>:v

If not specified on the commandline, filterspec is set from ANDROID_LOG_TAGS.
If no filterspec is found, filter defaults to '*:I'

If not specified with -v, format is set from ANDROID_PRINTF_LOG
or defaults to "brief"

示例:

  1. 看radio log
    logcat -b radio
    I/RILC ( 46): 39 0d 0a
    I/RILC ( 46): AT[0]< +ECIND: 1,16,99
    I/RILC ( 46): AT[0]< +ECSQ: 16,99
    I/RILC ( 46): <<<< pCh[0]...
    I/RILC ( 46): 0d 0a 2b 45 43 49 4e 44 3a 20 31 2c 31 37 2c 39 39 0d 0a 0d 0a 2b 45 43 53 51 3a 20 31 37 2c 39
    I/RILC ( 46): 39 0d 0a
    I/RILC ( 46): AT[0]< +ECIND: 1,17,99
    I/RILC ( 46): AT[0]< +ECSQ: 17,99
  2. 查看warning以上的log
    logcat *:w
    E/SensorManager( 102): smjni------jni data_open
    E/ ( 49): b433 6155
    E/ ( 49): b433 6157
    E/gralloc ( 102): [unregister] handle 0x2debd0 still lock
    W/BatteryService( 102): get battery health[0] 'Charging'
    W/BatteryService( 102): get battery health='Good'
    W/BatteryService( 102): get battery health[0] 'Charging'
    W/BatteryService( 102): get battery health='Good'
  3. 过滤查看dalvikvm的log
    logcat -s dalvikvm 或者 logcat dalvikvm *:s

    D/dalvikvm( 257): GC freed 1191 objects / 343344 bytes in 65ms
    D/dalvikvm( 257): GC freed 1191 objects / 343400 bytes in 64ms
    D/dalvikvm( 257): GC freed 1191 objects / 343368 bytes in 65ms
    D/dalvikvm( 257): GC freed 1191 objects / 343416 bytes in 70ms
    D/dalvikvm( 257): GC freed 1191 objects / 343384 bytes in 64ms
    备注:logcat的过滤方式有点儿怪异,并不是直接指定要过滤的tag并指定priority就行,必须要设定所有的为silent,在此基础上设置的tag过滤才成功。
    所以,logcat appname:v 是不能成功过滤log的。
  4. 过滤多个app 的log
    logcat -s dalvikvm vold

    D/vold ( 43): door_sock=10
    D/vold ( 43): fw_sock=7
    D/vold ( 43): uevent_sock=6
    D/dalvikvm( 257): GC freed 1191 objects / 343384 bytes in 76ms
    D/dalvikvm( 257): GC freed 1191 objects / 343368 bytes in 81ms
    D/dalvikvm( 257): GC freed 1191 objects / 343400 bytes in 64ms
    D/vold ( 43): select result=1
  5. log保存到文件
    logcat > 1.txt (">"是windows用的数据流导向符号)
    尝试用-f选项,结果报错。
    logcat -f 1.txt
    couldn't open output file: Read-only file system

免责声明:文章转载自《Logcat过滤及常见用法整理》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇WindowBlinds基础使用教程Qt绘图之QGraphicsScene QGraphicsView QGraphicsItem详解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

android adb常用指令

Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器的状态。 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或设备上拷贝来或拷贝走文件 下面对adb进行了介绍并描述了常见的使用. Contents 概要 发出adb命令 查询模拟器/设备实例 给特定的模拟器/设备...

《自拍教程40》Python adb一键导出Log

Android设备,比如车载系统实车路试过程中, 车上操作电脑比较麻烦,如果车载系统出现了Bug, 如何很方便地一次性导出相关的log来(logcat, dbus, 高德地图log,gps定位log等)来呢? 其实我们只需要一个python脚本就可以搞定! 准备阶段 adb pull 命令, 可以把Android系统里的文件,pull到电脑端 导出的Lo...

如何过滤 adb logcat 输出

对原作者表示感谢,转自博客:http://www.otechu.me/zh/2011/12/filtering-adb-logcat-output/ 本文介绍如何在shell 命令行中过滤 adb logcat 输出的几个小技巧。 开发当中经常看到别人的 log 如洪水般瞬间刷满了屏幕,对自己有用的信息都被淹没了,影响心情也影响效率。下面是几个我所知道的过...

android logd 原理及实现

一、logd介绍 logd 是Android L版本提出来的概念,其作用是保存Android运行期间的log(日志)。在Android L之前,log由kernel的ring buffer 保存,在Android L之后,log保存在用户空间。 1)  logd进程启动 系统启动到init函数时会解析init.rc文件,启动logd进程和logd-rein...

【转】使用 Android 的日志工具LogCat

Android中的日志工具类是 Log(android.util.Log),这个类中提供了如下几个方法来供我们打印日志。 1.    Log.v() 这个方法用于打印那些最为琐碎的,意义最小的日志信息。对应级别 verbose,是 Android 日志里面级别最低的一种。 2.    Log.d() 这个方法用于打印一些调试信息,这些信息对你调试程序和分...

ADB 常用命令

查看连接设备   adb devices //显示设备列表   adb get-serialno //获取设备序列号 重启adb service   adb kill-server   adb start-server adb 获取root控制   adb root   adb remount //将system分区重新挂载为可读写分区 adb...