将 logback.xml 放在 Tomcat 的啥位置?

Posted

技术标签:

【中文标题】将 logback.xml 放在 Tomcat 的啥位置?【英文标题】:Where to put logback.xml in Tomcat?将 logback.xml 放在 Tomcat 的什么位置? 【发布时间】:2013-12-24 00:07:54 【问题描述】:

当我们想要配置 logback.xml 文件在 Tomcat 中的什么位置?

以及如何使其内部运行的 Java 应用程序可以访问它?

【问题讨论】:

【参考方案1】:

您通常希望在类路径中有logback.xml。根据Logback FAQ:

对于web-applications,配置文件可以直接放在WEB-INF/classes/下。

因此您需要将其放入:

/webapps/your-app/WEB-INF/classes/

Logback 有一些关于它在哪里寻找它的约定。 Those are documented here.

Logback 尝试在类路径中查找名为 logback.groovy 的文件。

如果没有找到这样的文件,logback 会尝试在类路径中查找名为 logback-test.xml 的文件。

如果没有找到这样的文件,它会在类路径中检查文件 logback.xml。

如果没有找到任何文件,logback 会使用 BasicConfigurator 自动配置自己,这将导致日志输出为 定向到控制台。

但你也可以告诉它在哪里可以找到文件。

您可以指定默认配置文件的位置 名为“logback.configurationFile”的系统属性。这个的价值 属性可以是 URL、类路径上的资源或指向 应用程序外部的文件。

java -Dlogback.configurationFile=/path/to/config.xml chapters.configuration.MyApp1

请注意,文件扩展名必须是“.xml”或“.groovy”。其他 扩展名被忽略。显式注册状态监听器可能 帮助调试问题定位配置文件。

【讨论】:

将它放在我的 webapp 内部 还是其他可以在应用程序之间共享的地方更好? @Harold 这取决于您和您的设置。您可能希望为每个 web 应用设置不同的配置。

以上是关于将 logback.xml 放在 Tomcat 的啥位置?的主要内容,如果未能解决你的问题,请参考以下文章

logback 同一路径下只能有一个配置文件吗

部署到tomcat时如何设置logback.xml的位置?

springboot使用默认的logback配置logback-spring.xml每天一个日志文件

springboot使用默认的logback配置logback-spring.xml每天一个日志文件

springboot使用默认的logback配置logback-spring.xml每天一个日志文件

logback-结合spring profile使用