logcat 使用方法

格式:
logcat <功能选项> | <日志过滤描述>
1) logcat 的功能选项包括:
   -b      加载一个可使用的环形日志缓冲区,如:radio,events,main 是默认的。
   -c              清除所有 log 并退出
   -d              得到所有log并退出且不阻塞
   -g              得到环形缓冲区的大小并退出
   -f    输出日志信息到指定的文件中,默认是标准输出 stdout。
   -r []   设置环形日志缓冲区的kbytes,默认值为16,需要和 -f 选项一起使用
   -n       设置环形日志缓冲区的最大数目,默认值是4,需要和 -r 选项一起使用
   -s              设置默认的过滤级别为 Silent,例如指定 ‘*:S‘
   -B              输出 log 到二进制中。
   -v      设置 log 的打印格式,  格式有如下主要7种:(不能组合使用)
1. brief   - 显示 日志类型/日志标签 和 进程ID (默认格式);
   例如:$ adb logcat -v brief
      D/dalvikvm(   96): GC freed 13293 objects / 590664 bytes in 259ms
2. process - 仅显示 进程ID ;
   例如:$ adb logcat -v process
      D(   96) GC freed 13293 objects / 590664 bytes in 259ms  (dalvikvm)
3. tag     - 仅显示 日志类型 或 日志标签;
   例如:$ adb logcat -v tag
           D/dalvikvm: GC freed 13293 objects / 590664 bytes in 259ms
4. thread  - 仅显示 指定 日志类型 、进程ID:线程ID、日志标签;
   例如:$ adb logcat -v thread
        D(   52:0x3e) GC freed 19465 objects / 919736 bytes in 387ms
        D(   52:0x3e) threadid=15: bogus mon 1+0>0; adjusting
5. raw     - 显示原始日志信息,没有其它元数据字段;
   例如:$ adb logcat -v raw
        GC freed 19465 objects / 919736 bytes in 387ms
        threadid=15: bogus mon 1+0>0; adjusting
6. time    - 显示日期、调用时间,日志类型/日志标签 和 进程ID;
   例如:$ adb logcat -v time
   11-25 13:36:00.610 D/dalvikvm(   52): GC freed 19465 objects / 919736 bytes in 387ms
   11-25 13:58:40.650 D/dalvikvm(   52): threadid=15: bogus mon 1+0>0; adjusting
7. long    - 显示全部元数据字段分别用空行隔开;
   例如:$ adb logcat -v long
   [ 11-25 13:36:00.610    52:0x3e D/dalvikvm ]
   GC freed 19465 objects / 919736 bytes in 387ms
   [ 11-25 13:58:40.650    52:0x3e D/dalvikvm ]
   threadid=15: bogus mon 1+0>0; adjusting
2) logcat 的日志查询常用的有如下几种:
   1.查看全部系统日志缓冲区的内容
   $ adb logcat
   2.只输出指定类型的日志
     日志类型标识符(优先级由低到高排列):
     1. V — Verbose 详细的 <- 最低优先权
     2. D — Debug   调试
     3. I — Info    消息
     4. W — Warn    警告
     5. E — Error   错误
     6. F — Fatal   致命的
     7. S — Silent  无声的 <- 最高优先权

$ adb logcat *:V
   注:显示优先级为 Verbose 或更高的日志信息,输出 Debug、Info、Warn、Error 调试信息。
   $ adb logcat *:D
   注:显示优先级为 Debug 或更高的日志信息,输出 Debug、Info、Warn、Error 调试信息。
   $ adb logcat *:I
   注:显示优先级为 Info 或更高的日志信息,输出 Info、Warn、Error 调试信息。
   $ adb logcat *:W
   注:显示优先级为 Warn 或更高的日志信息,输出 Warn 和 Error 调试信息。
   $ adb logcat *:E
   注:只输出 Error 调试信息 。
   3. 只输出指定 类型 和 标签 的日志
   adb logcat <日志标签>:<日志类型标识符> <日志标签>:<日志类型标识符> ... *:S
   注:1. 可以写多个 <日志标签>:<日志类型标识符> 之间用空格分隔;
     2. 最后必须是 *:S
   例如:
   $ logcat dalvikvm:D Checkin:W *:S
   4. 只输出指定 标签 的日志
   adb logcat <日志标签>:* <日志标签>:* ... *:S
   注:1. 可以写多个 <日志标签>:<日志类型标识符> 之间用空格分隔;
     2. 最后必须是 *:S

时间: 2024-07-30 15:52:20

logcat 使用方法的相关文章

华为手机打开Logcat的方法

华为手机默认是关闭logcat信息的,这在开发调试时当然很不方便,打开log信息的方法如下 1. 进入拨号界面输入:*#*#2846579#*#* 2.2. 依次选择ProjectMenu---后台设置----LOG设置---LOG开关 点击打开, 然后在LOG级别选VERBOSE 3. 重新启动手机 来自为知笔记(Wiz)

ADB logcat 过滤方法(抓取日志)

1. Log信息级别 Log.v- VERBOSE  : 黑色 Log.d- DEBUG  : 蓝色 Log.i- INFO  : 绿色 Log.w- WARN  : 橙色 Log.e- ERROR  : 红色 从上而下级别逐次增加 2. 过滤:指定标签,指定级别 adb logcat [TAG:LEVEL ] [TAG:LEVEL ] ... 标签TAG: 在进行log输出时需要指定标签 Log.v("Test", info ); LEVEL: 可以选择:[V D I W E S]中

As的LogCat打开方法

主要这个窗口他不叫LogCat-- 原文地址:https://www.cnblogs.com/IceBlueBrother/p/8423169.html

Android NDK打印log到logcat的方法

头文件 : <android/log.h> 函数: __android_log_print(ANDROID_LOG_XXX,LOG_TAG,content) 第一个参数是Log级别,比如: V:ANDROID_LOG_VERBOSE D:ANDROID_LOG_DEBUG I:ANDROID_LOG_INFO W:ANDROID_LOG_WARN E:ANDROID_LOG_ERROR 第二个参数是Log tag 第三个参数是内容 <方便的用法>用户可以定义宏来方便使用 #defi

ADB Logcat Tool 和 DebugLevel的设定

1. logcat Base ADB logcat 过滤方法(抓取日志) 2. 1 logcat tool 在<ADB logcat 过滤方法(抓取日志) >这篇文章中提到了过滤log的一些方法, 但是这并不代表不输出日志,只是没有显示出来. 此外在某些情况下需要对log设置开关,不少人都是通过添加一条条的判断语句,这有些太低效,所以自己就搞了一个工具类. 2.2 原理 2.2.1 DEBUG_LEVEL 首先设置几个DebugLevel(和adb logcat 相对应) private st

安卓开发技巧

Android开发中LogCat工具的使用 LogCat是Android中一个命令行工具,可以用于得到程序的log信息,本附录讲解其使用方法和其中的一些技巧. 1.使用方法 LogCat使用方法如下所示: LogCat [options] [filterspecs] LogCat的选项包括: -s                    设置过滤器,如指定 '*:s'. -f <filename>   输出到文件,默认情况是标准输出. -r [<kbytes>]   Rotate l

Eclipse ADT中的logcat不显示解决方法

Eclipse ADT中的logcat不显示解决方法: 1.在Eclipse界面中找到DDMS,然后找到device选项卡,在这个选项卡中选择reset adb,如果不行尝试方法2: 2.不用关闭eclipse和模拟器,在Android SDK的tools目录下有个 ddms.bat 批处理文件,运行这个文件可以启动DDMS,同时这里面有logcat,可以显示信息: 3.以上方法都不行,最终杀手锏就是重启eclipse,重启模拟器,记得在任务管理器中关闭adb.exe,这时应该就可以了. 4.用

Android 查看 无wifi/usb设备的logcat方法

Android 查看 无wifi/usb设备的logcat方法 一.情况 一个定制Android设备,wifi被去掉,我需要调试一个USB设备这样也无法用usb来输出logcat. 因为这个USB设备需要内核驱动支持,因此无法在其它设备调试. 因此有的方法有,一般想到用蓝牙输出logcat,但这是Android wear 才支持的特性. 在代码中加入捕获错误和异常代码,写入sd卡,这个工作量较大,而且麻烦 二.简单的解决办法 1.安装Android Terminal 软件. 一个可用链接是 ht

几种在shell命令行中过滤adb logcat输出的方法

我们在Android开发中总能看到程序的log日志内容充满了屏幕,而真正对开发者有意义的信息被淹没在洪流之中,让开发者无所适从,严重影响开发效率.本文就具体介绍几种在shell命令行中过滤adb logcat输出的方法. 1.只显示需要的输出(白名单) 最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配.简单的匹配一行当中的某个字符串,例如 MyApp: adb logcat | grep MyApp       adb logcat | grep -i