【发布时间】:2017-10-02 08:22:01
【问题描述】:
我正在尝试配置一个独立的 Scalatra 应用程序以记录到文件。
我正在关注官方手册并将其添加到build.sbt:
"ch.qos.logback" % "logback-classic" % "1.2.3" % "runtime"
我还使用以下配置添加了/src/main/resources/logback.xml:
<configuration debug="false">
<appender name="file" class="ch.qos.logback.core.fileappender">
<file>/var/log/webapp.log</file>
<encoder>
<pattern>%d{hh:mm:ss.sss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<logger name="org.eclipse.jetty.server" level="warn"/>
<logger name="org.eclipse.jetty.util.log" level="warn"/>
<root level="info">
<appender-ref ref="file" />
</root>
</configuration>
但是当我组装一个 jar 并运行它时,所有标准输出都充满了来自码头的 DEBUG 级别日志,并且不存在 /var/log/webapp.log 文件。
我在构建时也收到此错误消息:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
我错过了什么?
【问题讨论】:
-
你可以尝试从
ch.qos.logback" % "logback-classic" % "1.2.3" % "runtime"行中删除` % "runtime" ` -
我试过了,但没有帮助
-
我还尝试将日志移至
webapp/WEB-INF/logback.xml,并运行sbt run jetty:start。仍然不是日志文件,标准输出中充斥着码头日志。
标签: scala jetty logback scalatra