logcat是什么?

Logcat 是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从您的应用使用 Log类编写的消息。

格式:[adb] logcat [<option>] ... [<filter‐spec>] ...

logcat 命令参数:
-b <buffer> 加载可供查看的备用日志缓冲区,比如event和radio。默认值是main缓存区
-c 清除缓冲区中的全部日志并退出(清除完后可以使用-g查看缓冲区)
-d 将缓冲区的log转存到屏幕中然后退出
-f <filename> 将log输出到指定的文件中<文件名>.默认为标准输出(stdout)
-g 打印指定日志缓冲区的大小并退出。
-n <count> 设置日志的最大数目<count>,默认值是4,需要和-r选项一起使用
-r <kbytes> 每输出<kbytes>日志文件,默认值是16,需要和-f选项一起使用
-s 设置默认的过滤级别为silent.( -s robin:I )
-v <format> 设置日志消息的输出格式。默认值为 brief 格式有关支持的格式列表

logcat缓冲区:adb logcat -b <buffer>
main 查看主要日志缓冲区(默认值)
events 查看包含事件相关消息的缓冲区
radio 查看包含无线装置/电话相关消息的缓冲区
system 查看系统组件的log

logcat日志输出格式:adb logcat -v <format>
brief 显示优先级/标记以及发出消息的进程的 PID(默认格式)
brief 显示优先级/标记,以及发出消息的进程的 PID(默认格式)
process 只显示 PID
tag 只显示优先级/标记
raw 显示原始的日志消息,没有其他元数据字段
time 显示日期、调用时间、优先级/标记以及发出消息的进程的 PID
threadtime 显示日期、调用时间、优先级、标记以及发出消息的线程的 PID 和 TID
long 显示所有元数据字段,并使用空白行分隔消息

logcat过滤日志输出:[<filter‐spec>] 格式:tag:priority
V (verbose)— 详细(最低优先级) D (debug)— 调试
I (info)— 信息 W (warning)— 警告
E (error)— 错误 F (fatal)— 致命
S (silent)— 静默(最高优先级,不会打印任何内容)

例: adb logcat ActivityManager:I MyApp:D *:S
最后一个元素 *:S 将所有标记的优先级设为“静默”,从而确保系统仅显示带有“ActivityManager”和“MyApp”标记的日志消息。

使用 *:S 可有效地确保日志输出受限于您已明确指定的过滤器 —它允许过滤器充当日志输出的“白名单”。

adb logcat 和 adb shell logcat 的区别:

区别:

adb logcat 抓取设备log时,使用Ctrl +C命令或 Ctrl + D 命令时,此时会终止对设备log 的抓取。

adb shell logcat 如果也做同样的操作,结果是一样的,也就说结果上并没有任何区别。

但是当 adb shell 和 logcat 分段使用时,就能看到不一样的效果。在shell中执行的命令logcat一直在后台运行,当操作快捷键后,logcat线程也就终止了

注:1.adb logcat 或者 adb shell logcat 都可以
2.一般长时间输出log的话建议-f,-n,-r三个参数连用,这样当一个文件日志输出满了之后可以马上在另一个中进行输出。
3.默认log输出(不指定缓冲区的情况下)是输出System和Main缓冲区的log

详情查看安卓官网developer.android.com

Logcat命令详情的更多相关文章

  1. adb logcat 命令

    转自:http://blog.csdn.net/tumuzhuanjia/article/details/39555445 1. 解析 adb logcat 的帮助信息 在命令行中输入 adb log ...

  2. adb logcat命令查看并过滤android输出log

    cmd命令行中使用adb logcat命令查看android系统和应用的log,dos窗口按ctrl+c中断输出log记录. logcat日志中的优先级/tag标记: android输出的每一条日志都 ...

  3. Android的logcat命令详解

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  4. adb logcat 命令行用法

    作者 :万境绝尘  转载请著名出处 eclipse 自带的 LogCat 工具太垃圾了, 开始用 adb logcat 在终端查看日志; 1. 解析 adb logcat 的帮助信息 在命令行中输入  ...

  5. Android NDK 开发中 adb logcat 命令的使用

    一.LogCat 存储在一个叫做 circular memory buffers 的缓冲中. 平时常用的都是通过eclipse 自带的 logcat 插件查看 logcat ,其实也可以通过命令来导出 ...

  6. adb环境配置+常用adb命令+Logcat命令的用法+手动进行文件比对的方法+批量挪bug

    1. adb环境配置:下载adb环境变量包:打开计算机属性-高级系统设置-环境变量:新建变量adb,值为刚才的环境变量包路径:编辑path值,在最后面加上;%adb%;确定就妥了 2. 常用adb命令 ...

  7. logcat命令详解【二】

    eclipse 自带的 LogCat 工具太垃圾了, 开始用 adb logcat 在终端查看日志; 1. 解析 adb logcat 的帮助信息 在命令行中输入 adb logcat --help  ...

  8. Android日志监听工具logcat命令详解(转)

    Android日志系统提供了记录和查看系统调试信息的功能.日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过logcat命令来查看和使用. 在使用logcat之前,请确保手机的USB调试 ...

  9. 【android】 adb logcat命令查看并过滤android输出log

    cmd命令行中使用adb logcat命令查看android系统和应用的log,dos窗口按ctrl+c中断输出log记录. logcat日志中的优先级/tag标记: android输出的每一条日志都 ...

随机推荐

  1. 第26月第9天 getActionBar为空的解决办法

    1.python 包路径 export PYTHONPATH=路径 https://blog.csdn.net/machinezj/article/details/60137666 2.getActi ...

  2. 在webpack中区分环境变量

    webpack 中的定义插件可以帮我们定义一些全局变量,使用方法如下: plugins: [ new webpack.DefinePlugin({ NODE_ENV: JSON.stringify(' ...

  3. mybatis执行批量更新数据

    1.业务需求:同时执行多记录批量操作 2.实现方法:     1)mapping: 2) dao 层 3)Service 层(注意要使用Transactional,否则可能会导致数据紊乱) 4)Con ...

  4. Python基础1(2017-07-16)

    先墨守常规写一个简单的hello world!这是所有语言学习的第一点. Python Hello world name="hello world!" print(name) 如上 ...

  5. JAVA进阶2

    间歇性混吃等死,持续性踌躇满志系列-------------第2天 1.父类子类继承(注:一个JAVA源文件中只能有一个public类,public 类的名字必须和这个编译单元的文件名完全相同,包括大 ...

  6. yum upgrade和yum update的区别

    Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的: yum -y update 升级所有包同时也升级软件.系统版本和系统内核 yum -y upgr ...

  7. RabbitMQ应用场景

    1.背景 RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue)的开源实现. 2.应用场景 2.1异步处理 场景说明:用户注册后,需要发注册邮件和注册短信, ...

  8. CF1098B/CF1099E Nice table

    题目地址:CF1098B/CF1099E Nice table 显然,a nice table需要满足如下条件: 要么,每行都由两个字符交替组成,相邻两行的字符均不相同 要么,每列都由两个字符交替组成 ...

  9. [Kubernetes]CentOS7部署Kubernetes集群

    环境介绍及安装前准备 三台机器,用于部署k8s的运行环境: 节点 ip Master 192.168.243.138 Node1 192.168.243.139 Node2 192.168.243.1 ...

  10. ESXI常用命令

    1.简介 VMware vSphere ESXi6.0常用命令使用,对于一些个人认为比较常用的命令进行总结,如果读者需要了解更多请访问VMware官网下载文档,链接如下:https://www.vmw ...