logger
logger copied to clipboard
The design of the restriction position for "isLoggable" is unreasonable
The problem of design thinking!
Logger.json() -> LoggerPrinter.json() (json format in here, Time-consuming) -> LoggerPrinter.d() -> LoggerPrinter.log()
Action code:
for (LogAdapter adapter : logAdapters) {
if (adapter.isLoggable(priority, tag)) {
adapter.log(priority, tag, message);
}
}
Why is this design problematic?
Because many users actually do this:
Logger.addLogAdapter(object : AndroidLogAdapter(formatStrategy) {
override fun isLoggable(priority: Int, tag: String?): Boolean {
return BuildConfig.DEBUG
}
})
And that's where the problem lies