在Spring MVC中外化logback.xml

时间:2017-05-09 06:19:28

标签: maven spring-mvc logback slf4j

我使用SL4J登录我的Java Spring MVC Web应用程序。我在logback.xml下有/src/main/resources个文件。在我的pom.xml文件中,我有以下与日志记录相关的内容:

<properties>
<org.slf4j-version>1.6.4</org.slf4j-version>
<logback.version>1.0.1</logback.version>
</properties>

以下依赖项:

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${org.springframework-version}</version>
            <exclusions>
                <!-- Exclude Commons Logging in favor of SLF4j -->
                <exclusion>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
    </dependency>
    <!-- Logging -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${org.slf4j-version}</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>${org.slf4j-version}</version>
        <scope>runtime</scope>
    </dependency>
    <!-- logback -->
     <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>${logback.version}</version>
     </dependency>

     <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>${logback.version}</version>
     </dependency>
</dependencies>

现在日志记录对我来说很好。但是现在我试图将logback.xml文件移到war文件之外,这样我就不必更改war文件来更改日志记录级别。我试图将文件移动到${catalina.base}/conf/。我无法找到一种方法来指定文件的路径,即$ {catalina.base} /conf/logback.xml。我发现了几个类似的问题,但我找不到可以使用的解决方案: Externalized the location of logback.xml in Spring Boot using application.propertieslogback externalization。有什么办法我可以在tomcat下的conf文件夹下移动文件并指定它的路径,这样我就可以将logback.xml保留为war文件

1 个答案:

答案 0 :(得分:1)

将记录属性放在tomcat配置文件夹中并不是一个好主意。最好把它放在应用程序文件夹/ war中。

但是有一种方法可以通过在spring应用程序属性文件中设置属性来从外部目录中找到logback.xml

例如在application.properties添加 logging.config=file:/home/user/tomcat/conf/logback.xml