这是可以自定义打入日志的代码
使用 LoggerFactory.getLogger,之后调用方法
/**
* @author 10951
* @version 1.0
* @date 2021/7/23 15:41
* 实现下载流程的日志打印
*/
public class DownloadLog implements Log {
Logger logger = LoggerFactory.getLogger(DownloadLog.class);
@Override
public void logInfoed(String str) {
logger.info(str);
}
@Override
public void logErrored(String string) {
logger.error(string);
}
}
配置文件
logback.xml
yml文件里的配置
logging:
config: classpath:logbak.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="LOG_HOME" value="./logs" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<!-- 高亮error、info -->
<pattern>%d{HH:mm:ss} |-%highlight(%-5level) [%thread]-[%file:%line]: %msg%n
</pattern>
</layout>
</appender>
<!-- 按照每天生成日志文件 -->
<appender name="INFOFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/fmycdong-info.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${LOG_HOME}/vangogh.log.%d{yyyy-MM-dd}.%i</FileNamePattern>
<MaxHistory>15</MaxHistory>
<MaxFileSize>1MB</MaxFileSize>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} |-%-5level [%thread]-[%file:%line]: %msg%n
</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>info</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="ERRORFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/fmycdong-error.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<FileNamePattern>${LOG_HOME}/vangogh-error.log.%d{yyyy-MM-dd}.%i</FileNamePattern>
<MaxHistory>15</MaxHistory>
<MaxFileSize>50kb</MaxFileSize>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} |-%-5level [%thread]-[%file:%line]: %msg%n
</pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印错误日志 -->
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<root level="info" >
<appender-ref ref="STDOUT" />
<appender-ref ref="INFOFILE" />
<appender-ref ref="ERRORFILE" />
</root>
</configuration>