要让logback不产生tmp文件,可以通过配置logback.xml文件来实现。
一种方法是在appender中设置文件名为固定的文件名,而不是使用时间戳作为文件名。例如,可以使用如下配置将日志写入固定的文件名 mylog.log
:
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>mylog.log</file>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
另一种方法是使用rollingFileAppender,并设置maxHistory为0,这将禁用历史日志文件的维护。例如:
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>mylog.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>mylog.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>1</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>5MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
通过以上配置,logback将会将日志写入到名为mylog.log
的文件中,不会产生任何tmp文件。