21

LogCat 输出下方有一个 TextField“过滤器”。但是,它似乎只过滤消息列。我也想过滤标签。因为有我的班级名称。

我怎样才能实现它?

4

9 回答 9

33

在 log cat 窗口的右上角有一个看起来像绿色 + 的按钮,如果您将鼠标悬停在它上面会在弹出窗口中显示“创建过滤器”,您可以从中按 log 标签进行过滤。它使用您指定的过滤器名称在 log cat 中创建一个新选项卡。然后该标签的所有输出将转到该选项卡而不是“日志”选项卡。

于 2010-10-28T15:05:13.387 回答
20

在 Eclipse 中,如果我想排除那些烦人的 Choreographer 消息,我会在 logcat 过滤器 TextField 中编写这个过滤器:tag:^(?!Choreographer).*$它会排除标签以文本开头的所有消息Choreographer

如果您想要多个排除项:tag:^(?!Choreographer|dalvikvm-heap|Trace).*$

于 2012-11-06T17:01:38.403 回答
13

Log tag字段接受 Java 正则表达式,所以试试这个:

^TAG_A$|^TAG_B$

与这些标签完全匹配。如果这是你的乐趣,你可以用复杂的正则表达式发疯。

于 2011-11-15T17:05:21.290 回答
5

老问题,但仍然相关,在这里的答案中没有看到这个答案。

要按 logcat 文本字段中的多个列进行过滤,只需space在正则表达式之间使用 a,并使用小写的列标题,然后:将正则表达式分配给该列而不是默认的 "text:"

例如:

tag:wif text:event

空格 ' ' 用作AND参数。没有空格
的单个 ' ' 是OR|

关于我在这里看到的评论之一 - 确实不需要通配符,因为它会在过滤器文本之前和之后自动应用。
如果不需要通配符,可以使用正则表达式语法来限制字符串。
例如:^starswithfullword$

提示:如果您想在输出中匹配空格字符或制表符,只需在\s所需位置输入:。

于 2013-02-20T09:19:53.590 回答
4

A sample from the ADB manual:

adb logcat ActivityManager:I MyApp:D *:S

The *:S is vital as this would suppress other tags different than the ones specified by us.

Unfortunately, one can't use wildcards in the names, i.e.:

adb logcat ActivityManager:I MyApp*:D *:S

wouldn't work.

于 2011-08-15T06:51:41.153 回答
4

过滤时,'tag:' 后面不能使用空格,并且都区分大小写。例如:

tag:MIRKO

并不是

TAG: mirko
于 2012-09-01T15:45:08.343 回答
3

在 shell 中运行 logcat 并通过 grep 进行管道传输。

甚至可能有一种方法可以从捕获输出的 Eclipse 窗口执行此操作。

于 2010-10-28T16:52:05.603 回答
1

这在所有平台上都应该是相同的,但我专门在 Mac Snow leopard、helios 上这样做......

使用最新的 eclipse 和 android 插件,转到 window -> show view -> android -> logcat

然后在视图的右上角有过滤器按钮:“V”“D”“I”“W”“E”然后是+编辑和-

单击 + 并输入您的标签或 pid

享受过滤后的 logCat

于 2011-07-22T16:12:20.663 回答
1

在 LogCat 的搜索文本框中,您将看到提示文本“搜索消息,接受 Java 正则表达式,前缀为 pid:, app:, tag: or text: to limit scope。”

所以只需输入标签:YOUR_TAG_NAME

于 2013-04-15T05:05:38.940 回答