springboot 错误日志与其它日志分开保存(每天)
在 resources 目录下,添加logback-spring.xml文件
<?xml version="1.0" encoding="UTF-8"?>
${CONSOLE_LOG_PATTERN}
${ENCODING}
logs/%d{yyyy-MM-dd}/info/info.%d{yyyy-MM-dd}.%i.log
30
30MB
INFO
ACCEPT
DENY
${NORMAL_LOG_PATTERN}
${ENCODING}
10MB
logs/%d{yyyy-MM-dd}/error/error.%d{yyyy-MM-dd}.%i.log
30
30MB
ERROR
ACCEPT
DENY
${NORMAL_LOG_PATTERN}
${ENCODING}
logs/%d{yyyy-MM-dd}/login/login.%d{yyyy-MM-dd}.%i.log
30
30MB
${NORMAL_LOG_PATTERN}
${ENCODING}
自定义日志级别显示的颜色
package com.example.datasource.config;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.pattern.color.ANSIConstants;
import ch.qos.logback.core.pattern.color.ForegroundCompositeConverterBase;
public class LogbackColorful extends ForegroundCompositeConverterBase {
@Override
protected String getForegroundColorCode(ILoggingEvent event) {
Level level = event.getLevel();
switch (level.toInt()){
//ERROR等级为红色
case Level.ERROR_INT:
return ANSIConstants.RED_FG;
//WARN等级为黄色
case Level.WARN_INT:
return ANSIConstants.YELLOW_FG;
//INFO等级为蓝色
case Level.INFO_INT:
return ANSIConstants.BLUE_FG;
//DEBUG等级为绿色
case Level.DEBUG_INT:
return ANSIConstants.GREEN_FG;
//其他为默认颜色
default:
return ANSIConstants.DEFAULT_FG;
}
}
}