logcat

猫咪不吃鱼:Android 日志系统分析

一、前言

logcat 作为读取日志的工具,相当于client 的角色;在前两篇文章中,关于 logcat 如何与其他部分沟通获取日志信息的流程已经介绍的比较清晰,本文不在赘述,转而归纳一下 logcat 的一些常用指令,并对其中一些做详细分析

二、命令简介

选项 描述 eg
-s 输出指定 tag 的日志,相当于过滤器表达式 ‘*:S’ logcat -s tag
-f 设置logcat 内容保存的位置,默认是stdout logcat -f sdcard/log.txt
-r 每输出 时轮替日志文件,默认是16 必须配合 -f (暂不明白) logcat -f sdcard/log.txt -r 1
-n 设置日志输出的最大数目, 需要 -r 参数 暂不明白
-v 设置日志消息的输出格式。详见下文 格式化输出 logcat -v thread
-D 输出各个日志缓冲区之间的分隔线 logcat -D …
-c 清除(清空)所选的缓冲区并退出,默认清除 main、system 和 crash logcat -c / -b all -c
-d 将日志转储到屏幕并退出 logcat -d > log.txt
-e 输出正则匹配的日志消息 logcat -e 匹配数据 -m 5
-m 输出 行后退出 ……
-t 仅输出最新的行数,此选项包括 -d 功能 logcat -t 5
-t ‘ 输出自指定时间以来的最新行,此选项包括 -d 功能 logcat -t ‘01-26 20:52:41.820’
-g 获取指定日志缓冲区的大小并退出 logcat -g
-G 设置日志环形缓冲区的大小,可以在结尾处添加 K 或 M logcat -G 2M
-b 加载可供查看的日志缓冲区,更多可见下文 日志缓冲区 logcat -b system
-B 以二进制文件形式输出日志 ……
-S 在输出中包含统计信息,以识别和定位日志垃圾信息发送者 ……
–pid= 仅输出来自给定 PID 的日志 logcat –pid=4355
Read more