如何为Tomcat,应用程序和具有回溯的库单独配置日志记录?

时间:2014-10-29 17:27:26

标签: java tomcat logging slf4j logback

我试图独立地在三个地方配置日志记录。理想情况下,每个记录的组件完全不知道其他组件。我想为此使用logback,因为它似乎有一些不错的功能和性能。

以下是我想要登录的地方:

  1. Tomcat(7)应该登录到$ {catalina_home} /logs/catalina.out,并且应该只记录Tomcat事件(部署,服务器启动等)
  2. 托管在Tomcat中的Web应用程序应该登录到$ {catalina_home} /logs/application.log,并且只应记录应用程序内容,例如请求验证或错误的结果
  3. Web应用程序中包含的库应该登录到$ {catalina_home} /logs/library.log,并且只应记录特定于该库的内容,例如与其他某些Web服务或库进行交互所需的时间特定错误
  4. 我知道这可能不是它的工作方式,但我认为我需要为每个问题都有一个logback.xml文件。实际上,我创建了它们并添加到类路径中,以便在类路径上多次出现" logback.xml"错误。

    我可以看到为什么我需要将我的应用程序和库注册配置合并到一个logback.xml文件中,但是如何将容器日志配置与应用程序+库日志配置分开?将logback配置文件添加到我的应用程序,以及按照here所述启用Tomcat的logback,仍会产生一个"多个logback.xml"错误。并且,Chapter 9的logback用户手册,它讨论了日志记录的分离,并没有真正展示如何分离容器和应用程序(只是多个应用程序),除非我在那里遗漏了什么。

0 个答案:

没有答案