目前要添加标准前缀以登录我们的Play应用程序,我使用其他功能覆盖LoggerLike特征
trait MyLogger extends LoggerLike {
...
def error(message: => String, error: => Throwable)(implicit myObject: MyObject) {
if (super.isErrorEnabled) logWithPrefix(encounterAware, super.error, message, error)
}
private def logWithPrefix(myObject: MyObject, log: (=> String) => Unit, message: => String) = {
log(s"A:${myObject.A} ${message}")
}
...
}
并像这样使用它:
new Logger(LoggerFactory.getLogger(this.getClass.getSimpleName)) with MyLogger
我希望这只影响在上下文中具有隐式myObject的日志条目,并保留所有旧引用有效,但我的所有日志都开始引用新方法。
我不想更改方法的名称或为隐式提供默认值。
我如何声明错误方法,以获得所需的行为?