嵌入式Jetty 9使用Logback进行日志记录

时间:2014-10-22 11:24:03

标签: jetty slf4j logback

我在maven项目中使用jetty,并且已使用slf4j和logback进行日志记录。 因此,我有一个logback.xml,我配置日志记录,它到目前为止工作(格式,我的项目和库的设置级别,......)。

但是,现在我在pom.xml中添加了jetty作为依赖项,我得到了大量新的DEBUG日志,我不想看到(通常)。

如何将jetty的日志级别设置为更高级别?

一开始,jetty报告它认出了slf4j:

13:08:57 [main]      [DEBUG] log - Logging to Logger[org.eclipse.jetty.util.log] via org.eclipse.jetty.util.log.Slf4jLog

在我的logback.xml中,我尝试按如下方式将jetty静音,但它不起作用:

<logger name="org.eclipse.jetty" level="INFO" />

这是我使用的其他库的技巧。

我阅读了jetty documentation regarding logging,但他们只记录了独立码头的使用 - 遗憾的是,我无法将其用于嵌入式用例。

1 个答案:

答案 0 :(得分:6)

我自己找到了答案 - 这有点令人尴尬。 问题是有两个用于日志记录的配置文件:logback.xml和logback-test.xml。

我没有在maven项目开发期间使用的logback-test.xml中调整记录器的级别。 另一方面,在构建包时使用logback.xml配置,例如,在生产中使用。

来自logback documentation

  

如果您正在使用Maven,并且您将logback-test.xml放在   src / test / resources文件夹,Maven将确保不包含它   在制作的神器中。因此,您可以使用其他配置   文件,即测试期间的logback-test.xml,以及另一个文件,   即生产中的logback.xml。

由于缺乏logback和maven的经验,我不知道这一点。

总结: 将以下内容添加到logback-test.xml可以解决我的问题:

<logger name="org.eclipse.jetty" level="INFO" />