Android Studio Flamingo Logcat使用方式

旧版Android Studio突然打不开了,安装了新的Flamingo。习惯用Log.e看日志,突然发现logcat没有筛选下拉了。o(╥﹏╥)o

还是需要查看官方文档:https://developer.android.google.cn/studio/debug/logcat?hl=zh-cn (不知道为啥,手机可以打开,电脑不行)。文档下文是链接中部分内容,记录一下,后续使用。

使用键值对搜索查询日志

在 Android Studio 中,您可以直接从主查询字段生成键值对搜索。此查询系统可准确提供您要查询的内容,还可根据键值对排除日志。虽然您可以选择使用正则表达式,但查询不必依赖于正则表达式。如需查看建议,请按查询字段中的 Ctrl + Space

图 . 按查询字段中的 Ctrl + Space 可查看建议查询的列表。(按了半天没试出来o(╥﹏╥)o)

以下是可以在查询中使用的键的一些示例:

  • tag:与日志条目的 tag 字段匹配。
  • package:与日志记录应用的软件包名称匹配。
  • process:与日志记录应用的进程名称匹配。
  • message:与日志条目的消息部分匹配。
  • level:与指定或更高严重级别的日志匹配,例如 DEBUG
  • age:如果条目时间戳是最近的,则匹配。值要指定为数字,后跟表示时间单位的字母:s 表示秒,m 表示分钟,h 表示小时,d 表示天。例如,age: 5m 只会过滤过去 5 分钟内记录的消息。

否定和正则表达式

以下字段支持否定和正则表达式匹配:tagpackagemessageline

否定的表示方式是在字段名称前面加上 -。例如,-tag:MyTag 匹配 tag 不包含字符串 MyTag 的日志条目。

正则表达式匹配通过在字段名称中附加 ~ 来表示。例如 tag~:My.*Tag

否定和正则表达式修饰符可以结合使用。例如,-tag~:My.*Tag

逻辑运算符和圆括号

查询语言支持由 &| 以及圆括号表示的 ANDOR 运算符。例如:

(tag:foo | level:ERROR) & package:mine

请注意,系统会强制执行常规的运算符优先级,因此:

tag:foo | level:ERROR & package:mine

求值结果为:

tag:foo | (level:ERROR & package:mine)

隐式逻辑运算符

如果未应用逻辑运算符,查询语言会自动将具有相同键的多个非否定 key-value 过滤器项视作 OR,并将其他过滤器项视作 AND

例如:

tag:foo tag:bar package:myapp

求值结果为:

(tag:foo | tag:bar) & package:myapp

但是:

tag:foo -tag:bar package:myapp

求值结果为:

tag:foo & -tag:bar & package:myapp

如果多个查询字词之间用空格分隔开且没有逻辑运算符,系统会将其视为低优先级 AND。例如,foo bar tag:bar1 | tag:bar2 这一术语等同于 'foo bar' & (tag: bar1 | tag: bar2)

特殊查询

package:mine

软件包键支持特殊值 mine。此特殊值与开放项目中包含的任何软件包名称匹配。

level

level 查询与 Logcat 消息的日志级别匹配,其中日志条目的级别大于或等于查询级别。

例如,level:INFO 匹配日志级别为 INFOWARNERRORASSERT 的任何日志条目。级别不区分大小写。有效级别包括:VERBOSEDEBUGINFOWARNERRORASSERT

age

age 查询根据条目的时间戳进行匹配,格式为 age:<number><unit>,其中

  • <number> 是一个整数值
  • <unit>smhd(秒、分钟、小时和天)之一。

根据以下列表,age 查询匹配的日志消息包含值所描述范围内的时间戳。例如,查询 age:5m 匹配时间戳不早于 5 分钟前的条目。

age:30s

age:5m

age:3h

age:1d

请注意,该时间戳是与主机(而非已连接的设备)的时间戳进行比较的。如果设备时间设置不正确,此查询可能无法正常运行。

is

您可以按如下方式使用 is 键:

  • is:crash 匹配表示应用崩溃(原生或 Java)的日志条目。
  • is:stacktrace 匹配表示任何类似 Java 堆栈轨迹的日志条目,而不管日志级别如何。

name

通过 name 键,您可以为已保存的过滤器提供一个唯一名称,使其在过滤器历史记录下拉菜单中易于识别。虽然您不会因多次指定 name 而遇到错误,但 IDE 仅会在查询中使用 name 的最后一个指定值。

查看查询历史记录

您可以通过点击查询字段旁边的 Show history 来查看查询历史记录。如需收藏某个查询,使其在所有 Studio 项目中始终位于列表顶部,请点击该查询旁边的星号。您还可以使用 name: 键使收藏的查询更容易识别。如需了解详情,请参阅特殊查询

跟踪应用崩溃和重启日志

当 Logcat 发现您的应用进程已停止并重启时,会在输出中显示一条消息,例如 PROCESS ENDEDPROCESS STARTED。重启 Logcat 会保留会话配置(例如标签页拆分、过滤器和视图选项),以便于您轻松继续会话。

相关推荐
zhangphil23 分钟前
Android简洁缩放Matrix实现图像马赛克,Kotlin
android·kotlin
m0_5127446424 分钟前
极客大挑战2024-web-wp(详细)
android·前端
lw向北.40 分钟前
Qt For Android之环境搭建(Qt 5.12.11 Qt下载SDK的处理方案)
android·开发语言·qt
不爱学习的啊Biao1 小时前
【13】MySQL如何选择合适的索引?
android·数据库·mysql
乐闻x1 小时前
VSCode 插件开发实战(九): 不同插件之间如何通信
ide·vscode·编辑器
乐闻x1 小时前
VSCode 插件开发实战(十): 环境变量Env设置与管理
ide·vscode·编辑器
jieshenai1 小时前
使用 VSCode 学习与实践 LaTeX:从插件安装到排版技巧
ide·vscode·学习
Clockwiseee1 小时前
PHP伪协议总结
android·开发语言·php
tanghongchang1234 小时前
Mac Android studio 升级LadyBug 版本,所产生的bug
macos·android studio·ladybug
mmsx8 小时前
android sqlite 数据库简单封装示例(java)
android·java·数据库