如何在Play Framework 2.2中配置记录器,以便在播放集成测试期间在控制台中看到日志输出?
Play Framework 2.1的配置不再有效。
BR Rene
答案 0 :(得分:18)
我还没有这样做,但你必须配置一个logback配置文件。有关其他信息,请参阅播放文档:http://www.playframework.com/documentation/2.2.x/SettingsLogger
一旦定义了特定的logback配置文件,就需要将其放在测试包中,有关详细信息,请参阅此问题:https://github.com/playframework/playframework/issues/1669#issuecomment-24452132
查看来自 @benmccann 的消息:您可以通过在test / resources中放置logback-test.xml来配置测试模式的记录器(花了我几个小时才弄明白!)。 / em>的
答案 1 :(得分:6)
更新要了解有关如何配置logback的更多信息,您应该将-Dlogback.debug=true
属性传递给jvm / play。这可能会节省你几个小时的诽谤。
在test/logback-test.xml
中添加一个文件(需要在类路径上,因此它可能取决于播放应用程序如何配置以查找测试资源),其内容类似于
<configuration>
<conversionRule conversionWord="coloredLevel"
converterClass="play.api.Logger$ColoredLevel" />
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>${application.home:-.}/logs/application.log</file>
<encoder>
<pattern>%date - [%level] - from %logger in %thread
%n%message%n%xException%n</pattern>
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%coloredLevel %logger{15} - %message%n%xException{5}</pattern>
</encoder>
</appender>
<logger name="play" level="INFO" />
<logger name="application" level="INFO" />
<root level="ERROR">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>