Java logback会在每次程序重启时创建新文件
我有这样的logback.xmp conf:Java logback会在每次程序重启时创建新文件,java,scala,logback,Java,Scala,Logback,我有这样的logback.xmp conf: <configuration scan="true" scanPeriod="10 seconds" > <appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>${application.home:-.}/logs/application.log</file> <filter class="ch
<configuration scan="true" scanPeriod="10 seconds" >
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>${application.home:-.}/logs/application.log</file>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
<encoder>
<pattern>[%d{HH:mm:ss}] [%level] - %message%n%xException</pattern>
</encoder>
</appender>
<logger name="play" level="WARN"/>
<logger name="application" level="DEBUG"/>
<logger name="org.jdbcdslog.ConnectionLogger" level="OFF"/> <!-- Won' log connections -->
<logger name="org.jdbcdslog.StatementLogger" level="INFO"/> <!-- Will log all statements -->
<logger name="org.jdbcdslog.ResultSetLogger" level="OFF"/> <!-- Won' log result sets -->
<root level="WARN">
<appender-ref ref="FILE"/>
</root>
</configuration>
${application.home:-.}/logs/application.log
调试
[%d{HH:mm:ss}][%level]-%message%n%xException
每次我重新启动我的程序,它都会创建新的日志文件,但以我的方式,我希望继续将日志写入旧的日志文件中。那么,问题出在哪里呢?Logback包含一个允许多个JVM登录到同一个日志文件的功能。可以通过将FileAppender的“审慎”属性设置为true来启用此功能
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- Support multiple-JVM writing to the same log file -->
<prudent>true</prudent>
</appender>
真的
RollingFileAppender扩展了FileAppender,使其能够滚动日志文件。您可能需要添加
我认为您需要使用append
属性
追加或截断文件?此变量的默认值为true,这意味着默认情况下FileAppender将追加到现有文件,而不是截断它
例如:
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>${application.home:-.}/logs/application.log</file>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
<encoder>
<pattern>[%d{HH:mm:ss}] [%level] - %message%n%xException</pattern>
</encoder>
<append>true</append>
</appender>
。。。而当前版本的append
属性默认为true
,不清楚为什么需要这样做1
请注意,将prudent
设置为true
也会将append
设置为true
1-除非。。。也许。。。您遇到了Windows文件锁定问题?对此没有帮助。我想这里还有其他问题。你忽略的东西;e、 g.重启时删除旧日志文件。无论如何,我认为我们需要一个MCVE来帮助我们了解实际发生的事情。这没有帮助吗?你使用的是什么版本的logback?