什么是日志框架
一套能实现日志输出的工具包
日志:能够输出系统运行的状态,以及执行的时间
能力
定制输出目标
定制输出格式
携带上下文
运行时选择性输出
灵活设置
效率高
日志框架的选择
常见的日志框架
Logback的使用与配置
//来自这个包org.slf4.*
private Logger logger = LoggerFactory.getLogger(User.class);
public class LoggerTest(){
public void test(){
logger.debug("debug...");
logger.info("info ...");
logger.error("error...");
}
}
//注解的方式, 需要引入一个工具包
//<groupId>org.projectlombok</groupId>
//<artifactId>lombok</artifactId>
@slf4j
public class LoggerTest(){
public void test(){
log.debug("...");
log.info("...");
log.error("..");
}
}
Logback的配置
二选一
简单配置可在application.yml中配置
logging:
pattern:
#日志格式 时间 - 消息 换行
console: "%d - %msg%n"
#输出到文件
file: /var/log/name.log
level: debug
#指定到类
复杂配置 选用 xml 配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>
%d - %msg%n
</pattern>
</layout>
</appender>
<appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>DENY</onMatch>
<onMismatch>ACCEPT</onMismatch>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>/var/log/tomcat/sell/info.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>/var/log/tomcat/sell/error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<root level="info">
<appender-ref ref="consoleLog" />
<appender-ref ref="fileInfoLog" />
<appender-ref ref="fileErrorLog" />
</root>
</configuration>
作者:廖师兄
链接:https://www.imooc.com/article/19005
来源:慕课网