Springboot logback日志配置、多环境配置

 

1、resources目录下新增 logback-spring.xml

1-1、logback-spring.xml配置内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <!--日志路径,读取yml路径值-->
    <springProperty scope="context" name="logPath" source="log.path"/>

    <!-- 控制台日志-->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>


    <!--所有日志输出-->
    <appender name="allLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 当前日志输出路径及文件名 -->
        <file>${logPath}/website-info.log</file>
        <!--日志输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <!--日志归档策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 归档文件名 -->
            <fileNamePattern>${logPath}/%d{yyyy-MM, aux}/all.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
            <!--单个文件大小-->
            <maxFileSize>64MB</maxFileSize>
            <!--日志保留天数-->
            <maxHistory>15</maxHistory>
        </rollingPolicy>


    </appender>


    <!-- error日志记录-->
    <appender name="errorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 日志输出路径及文件名 -->
        <file>${logPath}/website.log-error.log</file>
        <!--日志输出格式-->
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>

        <!--日志归档策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 归档文件名 -->
            <fileNamePattern>${logPath}/%d{yyyy-MM, aux}/error.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
            <!--单个文件大小-->
            <maxFileSize>64MB</maxFileSize>
            <!--日志保留天数-->
            <maxHistory>15</maxHistory>
        </rollingPolicy>

        <!-- 只记录error级别日志 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>error</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

    <!-- root级别配置 -->
    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="allLog"/>
        <appender-ref ref="errorLog"/>
    </root>


    <!--输出mapper层sql语句,这里name需根据自己项目的mapper包路径来配置-->
    <!--mybatis的log-impl需改为:org.apache.ibatis.logging.slf4j.Slf4jImpl-->
    <logger name="com.cs.mapper" level="debug">
    </logger>

    <!--输出jdbc事务信息-->
    <logger name="org.springframework.jdbc" level="debug">
    </logger>


</configuration>

2、修改 mybatis 日志实现类配置为slf4j

configuration:
    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl

3、application.yml 指定日志配置文件加载路径:

#logback自定义配置文件
logging:
  config: classpath:logback-spring.xml

 

4、application-dev.yml配置路径,开发环境可通过配置WEBSITE_LOG_PATH环境变量来指定目录:

    注意:配置WEBSITE_LOG_PATH 不生效时,试着重启IDEA开发工具

#日志路径
#注意:开发人员需配置本地日志输出路径的环境变量:WEBSITE_LOG_PATH,否则默认日志路径为:/Volumes/work/log/website
log:
  path: ${WEBSITE_LOG_PATH:/Volumes/work/log/website}

5、application-test.yml配置路径

#日志路径
log:
  path: /data/log/website

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值