使用Scalatra和LogBack登录文件



我正在尝试配置独立的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>

但是,当我组装一个罐子并运行它时,所有的Stdout都充满了来自Jetty的调试级别日志,没有/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.

我缺少什么?

这主要是因为在classpath上不可用logback-classic库。检查解析器是否没有被忽略 mavencentral

最新更新