【发布时间】:2022-02-03 16:42:00
【问题描述】:
使用 Timber 时,我可以看到自动生成的标签,这很好。但是,我无法真正在代码中访问这些标签。我只能在 Logcat 中看到它们,但我不知道如何过滤它们。
我知道可以仅为调试版本打开日志记录:
if (BuildConfig.DEBUG) {
Timber.plant(DebugTree())
}
但是,这对我来说不是很有用。我试着做:
Timber.plant(Timber.tag("TroublesomeClass"))
但我得到了:
java.lang.IllegalArgumentException: Cannot plant Timber into itself.
..这对我来说毫无意义。
有没有办法通过标签过滤Timber日志?
提前谢谢你!
【问题讨论】:
-
在 logcat 中过滤?
-
@Arpit Shukla 这是一个选择,但它不是一个好的选择。随着项目的发展,日志记录会变得非常繁重。发生这种情况时,即使在快速机器上,Logcat 过滤也会变得非常慢。在另一个使用普通旧日志的项目中,我创建了允许过滤的自定义记录器,我喜欢它。效率更高!
-
@Arpit Shukla 它还有助于定位项目的有问题的部分,即使在发布版本中您也希望保留日志。这样一来,您就可以在不降低整个应用程序速度的情况下获得更好的错误报告。
-
过滤后的日志要保存在哪里?
-
@Arpit Shukla 只需在标准输出中显示它们就可以了。我打算在 Logcat 中查看它们。它确实“只是”关于速度。 Logcat 实在是太慢了,无法在大型项目中高效使用。
标签: android kotlin logging timber-android