【已解决】Android的logcat中如何根据标签去过滤掉不显示某些log信息

【问题】

折腾:

【未解决】Android调试设备时logcat中出错:03-07 13:49:48.483: E/IMGSRV(9899): :0: gralloc_module_unmap: find buffer in dequeued status ID=3454

期间,无法解决该错误,所以想要去规避掉该错误。

想到,是否可以去logcat中设置过滤规则,比如是

E/IMGSRV

之类的错误,都不显示?

【折腾过程】

1.自己手动找了找,发现自己新建一个规则,过滤符合该规则的信息:

only can add new filter in logcat to show those log item

但是无法实现,去过滤掉,不显示对应的信息。

2.后来去搜:

logcat filter out

而参考:

android – How to filter out a tagname in Eclipse LogCat viewer – Stack Overflow

然后也想到,之前logcat中的输入框中提示的:

Search for messages. Accepts Java regexes. Prefix with pid:, app:, tag or text: to limit scope.

即:其也支持各种形式的过滤规则的。

去试试:

(1)在新建的过滤器中的by Log Tag中输入:

^(?!.*(IMGSRV)).*$

结果就可以:

add regex filter out IMGSRV log item

实现,不显示tag为IMGSRV的那些log信息了。

(2)另外一个等价的实现方式是在输入框中输入过滤规则

没有任何过滤规则时,显示的是带错误的信息的log:

logcat not add tag filter will show imgsrv error items

而加上了:

tag:^(?!.*(IMGSRV)).*$

后,就可以实现过滤掉那些log信息了:

logcat added tag filter in search box can filter out

 

如此,即可。

 

【总结】

实现过滤不显示LogCat中某些类型的log信息,有两种方式:

1.直接新建一个过滤器(过滤规则),然后加上自己的配置,尤其是通过正则表达式去实现对于某些规则的取反,从而实现过滤掉某些信息

比如:

在新建的规则中的by Log Tag中,输入:

^(?!.*(IMGSRV)).*$

即可过滤掉Tag是IMGSRV的那些log信息了。

2.在LogCat的查找框中直接输入过滤规则,同理,通过正则去输入某些规则的取反,即可。

比如:

在默认的那个(当为空时,会提示 Search for messages. Accepts Java regexes. Prefix with pid:, app:, tag or text: to limit scope. 的)输入框中加上:

tag:^(?!.*(IMGSRV)).*$

即可。



One Thought on “【已解决】Android的logcat中如何根据标签去过滤掉不显示某些log信息

发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量