我有一个所有标准配置的播放框架应用程序。我像这样修改logback.xml
:
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%coloredLevel %logger{15} %L - %message%n%xException{10} </pattern>
</encoder>
</appender>
我尝试了一下,而不是%L
放入%line
、%class
等--结果都是一样的,它在日志消息中输出?
,如下所示:
[info] application ? - Checking cart...
我还尝试遵循这个问题的公认答案:Scala Play framework: logger pattern for displaying file and line
把val logger = Logger(this.getClass)
放进我的班里。结果仍然是一样的。有没有办法解决这个问题?在build.sbt中指定的登录版本为2.11
。
发布于 2018-07-10 16:19:11
我添加了includeCallerData
并开始工作
<appender name="ASYNCSTDOUT" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="STDOUT"/>
<includeCallerData>true</includeCallerData>
</appender>
发布于 2017-02-22 02:21:42
使用你问题中的%L
在Play 2.4和Play 2.5 (确切版本:2.4.6
和2.5.12
)中都能完美地工作。
但是,我注意到,在这两个应用程序的build.sbt
中,我都没有显式地声明的任何所需版本。
这导致(对于Play 2.5应用程序):
+-com.typesafe.play:play-logback_2.11:2.5.12 [S]
| +-ch.qos.logback:logback-classic:1.1.7
| | +-ch.qos.logback:logback-core:1.1.7
| | +-org.slf4j:slf4j-api:1.7.20 (evicted by: 1.7.21)
| | +-org.slf4j:slf4j-api:1.7.21
(通过sbt-dependency-graph插件创建依赖关系树)
如果您看到的是不同的logback版本,请尝试删除任何显式依赖声明,以便在依赖关系树中看到相同的库版本。
希望能有所帮助。
https://stackoverflow.com/questions/41645744
复制相似问题