无法让log4j在游戏中运行!框架2.2.1(scala项目)

mue*_*air 5 java log4j scala playframework-2.0

我不能让log4j在play框架2.2.1中运行

我使用以下log4j.properties:

log4j.rootLogger=INFO
log4j.logger.deng=INFO
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
Run Code Online (Sandbox Code Playgroud)

application.conf:

application.log=INFO
application.log.path=/log4j.properties
Run Code Online (Sandbox Code Playgroud)

scala用法示例:

object SomeService {

  private val log = Logger.getLogger(this.getClass())

  def someMethod() = {
      log.error("test")
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我运行测试,我会得到以下控制台输出:

log4j:WARN No appenders could be found for logger (SomeService.class).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Run Code Online (Sandbox Code Playgroud)

请有人帮我这个吗?

非常感谢

Vid*_*dya 3

首先,摆脱 log4J 的东西(这是 2008 年的),只使用 Play 附带的通过 SLF4J 的 Logback。甚至 log4j 的作者也会告诉你这一点,因为他们也是 Logback 的作者。

然后创建一个名为的备用 logback 配置文件application-logger.xml,并将其复制到Play 应用程序的conf文件夹中,以便在部署时加载它。

有关使用 Play 配置 Logback 的更多信息!框架,请参阅配置日志记录

  • 如果我想要打印 API 的日志并且该 API 使用 log4j 该怎么办? (2认同)