在Android中使用Logger时,如何过滤掉所有噪音



我支持一个非常大的Android应用程序,该应用程序中有数百条Logger消息。有时,由于所有的噪音,很难排除故障。我知道如何过滤,但即使有这么大的应用程序,也很难不过度过滤,只针对特定的功能。

日志记录的一些最佳实践是什么,可以让你在尝试针对应用程序的特定流时过滤掉噪音?

不久前,我利用了Log的标记参数。我在自己的日志包装器类中创建了方法,并且在使用针对特定类和功能的筛选器监视logcat输出时非常有用。

标记属性设置为classname和methodname的异常日志记录示例方法如下所示。然后在logcat中,您可以通过像"Foo@bar"这样的标记过滤来只监视Foo类和bar()方法。

public class DLogger{
public static void e(Exception e) {
String tag = e.getStackTrace()[1].getClassName() + " @ " + e.getStackTrace()[1].getMethodName();
Log.e(tag, e);
}
...
}

最新更新