我坚持使用一个闭源库,开发人员认为记录每个操作都是明智的,无论多么微不足道,优先级为ERROR。许多这些操作发生在连续循环中。我可以在logcat中过滤输出,但是有很多相关消息消失得比我在DDMS的logcat查看器中读取它们的速度快。
到目前为止,我已尝试过以下方法:
stop
setprop <tag> 7 //it looks like setprop expects the pri level as a string, so this won't
start //work
stop
setprop <tag> INFO //I think this allows for INFO pri logs and above, so that doesn't
start //help
logcat <tag>:S //should suppress all logs from the given tag, but has no effect on
//logs in logcat and starts cloning logcat output to the shell for some
//reason
logcat *:S //tried just to see if it would work -- it printed the beginning of new
//empty log session to the shell and then never returned control of the shell.
//logcat output in Eclipse was unaffected
以root身份,但这些都没有抑制ERROR垃圾邮件。我是否需要在应用上述命令的设备上指定运行的目标VM,还是在系统范围内?如果我确实需要指定VM,我该怎么办?我发现的所有相关的唯一官方文档是this用于logcat过滤。是否有任何全面的setprop手册,最好来自Google?
主要问题:有没有办法禁用/禁止具有给定标记的所有日志,即使优先级是ERROR?
答案 0 :(得分:1)
一种方法是从命令行过滤掉消息并将它们存储在错误文件中。 您可以尝试以下命令:
adb logcat :W | grep -v&#34; ^ E&#34; &gt; error.log中
*:W
过滤器表达式显示所有具有优先级&#34;警告&#34;的日志消息。所有标签上的更高级别
grep -v&#34; ^ E&#34; *
过滤掉所有错误消息。
&GT; error.log中
将所有这些消息保存在文件中。
希望这有帮助。