springboot日志(控制台输出,日志文件输出)

基本信息

  • SpringBoot版本2.2.5
  • 日志框架SLF4J
  • 日志实现LockBack

因为springboot自带SLF4J与LockBack,所以不需要引入maven

简单实现

在控制台输出

在配置文件下一行代码搞定

logging.level.com.hbsc.iotmiddleplatform.mapper = debug

springboot日志(控制台输出,日志文件输出)_第1张图片

以日志文件输出

直接指定文件,会在文件中输出,文件在项目根目录下

logging.file.name=logs.log

springboot日志(控制台输出,日志文件输出)_第2张图片

直接指定文件夹,会在文件中输出,文件夹在项目根目录下

logging.file.name=logs/lab.log

springboot日志(控制台输出,日志文件输出)_第3张图片

指定绝对路径

logging.file.name=D:/logsTest1/lab.log

springboot日志(控制台输出,日志文件输出)_第4张图片

个性化(复杂)实现

生成配置文件

在resource文件夹下生成 ‘logback-spring.xml’(官方推荐)


<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <contextName>logbackcontextName>

    
    <substitutionProperty name="logging.pattern.console"
                          value="%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
    
    <substitutionProperty name="logging.pattern.file"
                          value="%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>

    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
    <conversionRule conversionWord="wex"
                    converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
    <conversionRule conversionWord="wEx"
                    converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>

    
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>
                ${logging.pattern.console}
            pattern>
        layout>
    appender>

    
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <Prudent>truePrudent>
        
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            
            <FileNamePattern>
                logs/%d{yyyy-MM}/%d{yyyy-MM-dd}.log
            FileNamePattern>
            
            <MaxHistory>365MaxHistory>
        rollingPolicy>
        
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>DEBUGlevel>
        filter>
        
        <encoder>
            <Pattern>
                ${logging.pattern.file}
            Pattern>
        encoder>
    appender>

    
    
    
    
    
    
    <logger name="com.lpc" level="TRACE" additivity="true">
    logger>

    <root level="INFO">
        <appender-ref ref="console"/>
        <appender-ref ref="file"/>
    root>

configuration>

springboot日志(控制台输出,日志文件输出)_第5张图片

你可能感兴趣的:(Java,日志,spring,boot,java,后端)