我最近开始在Spring启动应用程序中工作。该应用程序使用弹簧日志回用于日志记录实现。
该应用程序在不同的环境中捆绑为战争。但是,写入日志的位置在每个环境中都不同,并在logging.properties
文件中提及。
因此,我目前每次在备战前都要改变地点。
如何在 Tomcat 配置中设置日志的路径,以便为环境自动选择路径。
目前 mu logback appender 看起来像这样:
<appender name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logging.file}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${logging.file}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>${log.file.size}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>${log.file.history}</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${logging.pattern.file}</pattern>
</encoder>
</appender>
此处的所有属性都是从src/main/resources
logging.properties
文件中选取的
spring-boot 提供了几个可以在 application.properties 中应用的logging.*
设置,例如:
logging.level.=DEBUG
logging.file=myfile.log
logging.path=d:/logs/
如果设置了logging.path,Spring Boot 会将 spring.log 写入指定的目录。名称可以是确切的位置,也可以是相对于当前目录的位置。