Springboot 日志管理配置logback-spring.xml

几种常见的日志

  1. Log4j:是最早的日志框架,是apach旗下的,可以单独使用,也可配合日志框架JCL使用;
  2. Log4j2:apach旗下的关于log4j的升级版;
  3. Logback:是基于slf4j接口实现的一套日志框架组件;(Logback是由log4j创始人设计的又一个开源日志组件。)
  4. JUL(java utillog):仿log4j实现的日志框架,是sun旗下的,(也就是在我们普遍使用的jdk中);
  5. Commons loggin:是一套日志接口(apache);
  6. Slf4j:也是一套日志接口; 

              Commons Logging和Slf4j是日志门面(门面模式是软件工程中常用的一种软件设计模式,也被称为正面模式、外观模式。它为子系统中的一组接口提供一个统一的高层接          口,使          得子系统更容易使用)。log4j和Logback则是具体的日志实现方案。可以简单的理解为接口与接口的实现,调用这只需要关注接口而无需关注具体的实现,做到解耦;
   比较常用的组合使用方式是Slf4j与Logback组合使用,Commons Logging与Log4j组合使用。

     下面是Slf4j与Logback使用:

Springboot 日志管理配置logback-spring.xml

Springboot 日志管理配置logback-spring.xml_第1张图片

(1).application.yml配置

1 # 日志目录
2 logging:
3   path: home/logs/
4   file: ${logging.path}springboot

(2).logback-spring.xml配置

 1 xml version="1.0" encoding="UTF-8"?>
 2 
 3 
 4 
 6 
 7 
 8 <configuration debug="true">
 9     
10     
11     <property name="LOG_FILE" value="${LOG_FILE}"/>
12 
13     
14     <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
15         <encoder>
16             <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} [%line] - %msg%npattern>
17         encoder>
18     appender>
19 
20     
21     
22     <appender name="R" class="ch.qos.logback.core.rolling.RollingFileAppender">
23         
24         
25         
26         <encoder>
27             <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} [%line] - %msg%npattern>
28         encoder>
29         
30         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
31             <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.log
32             fileNamePattern>
33             <maxHistory>15maxHistory>
34         rollingPolicy>
35     appender>
36 
37     <logger name="noModule" level="info"/>
38     <logger name="org.codehaus" level="info"/>
39     <logger name="org.apache" level="info"/>
40     <logger name="org.springframework" level="info"/>
41     <logger name="druid.sql" level="info"/>
42     <logger name="com.alibaba" level="debug">
43         <appender-ref ref="stdout"/>
44     logger>
45     <logger name="com.springboot" level="debug"/>
46     <root level="info">
47         <appender-ref ref="stdout"/>
48         <appender-ref ref="R"/>
49     root>
50 configuration>

(3).生成日志

Springboot 日志管理配置logback-spring.xml_第2张图片

Slf4j使用

1 (1) public final class InStockController {
2  
3      private static final Logger LOGGER = LoggerFactory.getLogger(InStockController.class);
4  }
5  
6 
7  
8 (2)  方法中
9   LOGGER.info("xxxxxxxx");

 

你可能感兴趣的:(Springboot 日志管理配置logback-spring.xml)