美文网首页
Android物语:logcat

Android物语:logcat

作者: 非著名自行车运动员 | 来源:发表于2020-07-15 16:02 被阅读0次

logcat介绍

logcat是android中的一个命令行工具,可以用于得到程序的log信息


image.png

logcat 命令格式

logcat [options] [filterspecs]


image.png

logcat缓冲区

android log输出量巨大,特别是通信系统的log,因此,android把log输出到不同的缓冲区中,目前定义了四个log缓冲区:

options filterspecs eg
radio 输出通信系统的log adb logcat –b radio
system 输出系统组件的log adb logcat –b system
events 输出event模块的log adb logcat –b events
main 所有java层的log,遗迹不属于上面3层的log adb logcat –b main

获取缓冲区命令

options filterspecs
-b 加载一个可使用的日志缓冲区提供查看,默认值是main

缓冲区主要给系统组件使用,一般的应用不需要关心,应用的log都输出到main缓冲区中
默认log输出(不指定缓冲区的情况下)是输出System和Main缓冲区的log

logcat格式化输出: 输出格式

日志消息包含一个元数据字段,除了标签和优先级,您可以修改输出显示一个特定的元数据字段格式的消息。为此,您使用-v选项来指定一个支持的输出格式
eg: adb shell logcat -v threadtime
支持的参数:

options filterspecs
brief 显示优先级/标记和过程的PID发出的消息(默认格式)
process 只显示PID
tag 只显示优先级/标记
raw 显示原始的日志消息,没有其他元数据字段
time 调用显示日期、时间、优先级/标签和过程的PID发出消息
threadtime 调用显示日期、时间、优先级、标签遗迹PID TID线程发出的消息
long 显示所有元数据字段与空白行和单独的消息

logcat格式化输出: 优先级

以下优先级从低到高

options filterspecs eg
V –Verbose(最低优先级) adb logcat *:v
D – Debug adb logcat *:d
I – Info adb logcat *:i
W – Warning adb logcat *:w
E – Error adb logcat *:e
F – Fatal adb logcat *:f
S – Silent adb logcat *:s

logcat格式化输出: 可用参数

options filterspecs
-s 设置输出日志的标签, 只显示该标签的日志
-f 将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功
-r 按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功
-n 设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样
-v 设置日志的输出格式, 注意只能设置一项
-c 清空所有的日志缓存信息
-d 将缓存的日志输出到屏幕上, 并且不会阻塞
-t 输出最近的几行日志, 输出完退出, 不阻塞
-g 查看日志缓冲区信息
-b 加载一个日志缓冲区, 默认是 main, 下面详解
-B 以二进制形式输出日志

相关文章

网友评论

      本文标题:Android物语:logcat

      本文链接:https://www.haomeiwen.com/subject/mxzdhktx.html