LogBack指定时间间隔生成日志文件
支持小时,分钟,秒
比如每2小时,每5分钟,每30秒产生一个日志文件
package dao.log;
import ch.qos.logback.core.joran.spi.NoAutoStart;
import ch.qos.logback.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy;
import lombok.Getter;
import lombok.Setter;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
@Getter
@Setter
@NoAutoStart
public class PeriodTimeBasedFileNamingAndTriggeringPolicy extends DefaultTimeBasedFileNamingAndTriggeringPolicy {
private int periods = 1;
private String type = "min";
@Override
public void start() {
if (periods < 1) periods = 1;
super.start();
}
private Date getAlignTime(long timeStamp) {
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(timeStamp);
if (periods == 1)
return calendar.getTime();
if ("hour".equals(type))
calendar.set(Calendar.HOUR_OF_DAY,

这篇博客介绍了如何扩展LogBack的DefaultTimeBasedFileNamingAndTriggeringPolicy,创建一个名为PeriodTimeBasedFileNamingAndTriggeringPolicy的类,允许设置按分钟、小时或秒的时间间隔生成新的日志文件。示例代码展示了如何配置每5分钟生成一个日志文件,并在配置中应用了自定义策略。
最低0.47元/天 解锁文章
1330

被折叠的 条评论
为什么被折叠?



