我使用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.properties和
logback externalization。有什么办法我可以在tomcat下的conf文件夹下移动文件并指定它的路径,这样我就可以将logback.xml
保留为war文件
答案 0 :(得分:1)
将记录属性放在tomcat配置文件夹中并不是一个好主意。最好把它放在应用程序文件夹/ war中。
但是有一种方法可以通过在spring应用程序属性文件中设置属性来从外部目录中找到logback.xml
。
例如在application.properties
添加
logging.config=file:/home/user/tomcat/conf/logback.xml