Spring Boot教程(4)-日志配置-logback和使用。

SpringBoot支持日志框架:Java Util Logging, Log4J2 and Logback,默认是使用logback

logback配置方式:默认配置文件配置和引用外部配置文件配置

SpringBoot默认使用logback,所以不用引入依赖直接使用

一:默认配置文件配置(不建议使用:不够灵活,对log4j2等不够友好)

# 日志文件名,比如:wsj.log,或者是 /log/wsj.log

logging.file=wsj.log

# 日志级别配置,比如: logging.level.org.springframework=DEBUG

logging.level.*=info

logging.level.org.springframework=DEBUG

 

二:引用外部配置文件(本文使用配置文件形式)

  1. logback配置方式:

spring boot默认会加载classpath:logback-spring.xml或者classpath:logback-spring.groovy

 

使用自定义配置文件,配置方式为:

logging.config=classpath:logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <Pattern>.%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg %n
            </Pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>INFO</level>
        </filter>
    </appender>

    <appender name="fileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>wsj/logs/boot-server.%d{yyyy-MM-dd}.log</fileNamePattern>
            <maxHistory>90</maxHistory>
        </rollingPolicy>
        <encoder>
            <Pattern>.%d{HH:mm:ss.SSS} [%thread] [user="%X{user}" token="%X{token}"] %-5level %logger{36} - %msg %n
            </Pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
    </appender>

    <logger name="com.wsj" level="INFO" />

    <root>
        <level value="INFO" />
        <appender-ref ref="fileAppender" />
        <appender-ref ref="consoleAppender" />
    </root>
</configuration>

之后直接代码加载logback是结合slf4j使用的。所以导入是slf4j。

package com.wsj.springbootdemo.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


/**
 * 项目名称:IndexController;
 * 类 名 称:IndexController;
 * 类 描 述:TODO ;
 * 创 建 人:Angus;
 * 创建时间:2020/2/15 16:41;
 *
 * @version:0.1;
 **/
@RestController
@RequestMapping("/wsj")
public class IndexController {
    Logger logger = LoggerFactory.getLogger(IndexController.class);
    @RequestMapping("/index")
    public String index(){
        logger.info("哈哈哈哈哈");
        return "hello word";
    }
}

然后就会生成对应的log文件和控制台打印出日志:

好了。logback使用就到这里。。具体的logback参数使用可以查询资料。

github地址:https://github.com/itwsj/springbootdemo

发布了210 篇原创文章 · 获赞 1042 · 访问量 56万+

猜你喜欢

转载自blog.csdn.net/onceing/article/details/104333029