我正在尝试实现sl4j简单日志记录 对于Scala单例的/内部,但它似乎并不存在 工作。
例如,如果尝试这个,代码将运行,但是 没有记录:
class Driver{
Foo.showLogs()
}
import org.slf4j.Logger
import org.slf4j.LoggerFactory
object Foo {
protected val log = LoggerFactory.getLogger(getClass.getName)
showLogs() {
val lst = (1,2,3,4,5)
for(l <- lst) {
log.info("List item :" + l )
}
}
}
我想做的甚至可能吗?在此先感谢!!!
答案 0 :(得分:2)
它应该记录。如果没有,则由于您的日志记录配置而导致。
您是否在类路径上有SLF4J binding,例如Logback还是SLF4J-Simple?
如果你没有,你应该看到一条关于没有约束力的警告信息。
如果这样做,则会将其配置为不显示INFO
的{{1}}日志(这将是此记录器的名称)。
旁注:Foo$
是不好的做法。将log.info("List item :" + l )
或log.info("List item :{}", l)
与Scala包装程序库(例如https://github.com/typesafehub/scala-logging)一起使用。