Springboot Logback日志使用,Springboot Logback详细配置和日志分割

本文介绍了如何在Springboot中使用Logback进行日志管理,包括引入依赖、区分不同环境的配置、详细配置文件设置以及监听器的使用。通过SpringProperty标签,可以在Logback配置中引用Springboot的环境变量,但需要注意避免命名冲突导致的加载问题。最后,文章提供了测试日志的实践指导。
摘要由CSDN通过智能技术生成

Springboot Logback日志使用,Springboot Logback详细配置和日志分割

Springboot Logback springProperty使用,Springboot Logback区分环境

================================

©Copyright 蕃薯耀 2020-12-23

https://www.cnblogs.com/fanshuyao/

一、引入Logback日志的maven依赖:logback-classic

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
</dependency>

二、Springboot Logback 区分环境配置:

1、application.properties:

spring.profiles.active=dev

server.port=6000
server.servlet.context-path=/logback

2、application-dev.properties:

logging.config=classpath:logback-spring-dev.xml

3、application-test.properties:

logging.config=classpath:logback-spring-test.xml

4、application-prod.properties:

logging.config=classpath:logback-spring-prod.xml

通过logging.config设置Springboot使用的日志配置文件,这样每个环境都可以使用不能的配置。

如果不区分环境,可以直接命名为:logback-spring.xml,这样Springboot会自动加载。

三、Springboot Logback.xml 配置文件详细设置:

1、logback-spring-dev.xml

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

<!--默认每隔一分钟扫描此配置文件的修改并重新加载-->
<!-- <configuration scan="true" scanPeriod="60 seconds"> -->
<configuration>


    <contextListener class="com.lqy.log.listener.LogbackStartupListener"/>

    <!--定义日志文件的存储地址 勿在LogBack的配置中使用相对路径-->
    <property name="projectName" value="logback"/>
    <property name="LOG_HOME" value="E:/logs"/>
    <property name="logDays" value="30"/>
    <property name="history" value="history"/>
    <property name="log_style" value="[%level] [%date{yyyy-MM-dd HH:mm:ss.SSS}] %thread %class.%method:%line%n%msg%n%n"/>
    
    <!-- 读取spring配置文件的变量 -->
    <springProperty name="springProfilesActive" source="spring.profiles.active"/>
    
    <!--控制台输出-->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>[${springProfilesActive}]${log_style}</pattern>
        </encoder>
    </appender>
    
    
    <!--输出日志到文件中-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_HOME}/${projectName}/${weblogicName}/info.log</file>
        <!--不输出ERROR级别的日志-->
        <!-- 
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>DENY</onMatch>
            <onMismatch>ACCEPT</onMismatch>
        </filter>
         -->
        
        <!--根据日期滚动输出日志策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_HOME}/${projectName}/${weblogicName}/${history}/%d{yyyy-MM-dd}-info.log</fileNamePattern>
            <!--日志保留天数-->
            <maxHistory>${logDays}</maxHistory>
        </rollingPolicy>
        
        <encoder>
            <pattern>[${springProfilesActive}]${log_style}</pattern>
        </encoder>
        
    </appender>
    
    
    <!--警告日志输出文件-->
    <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_HOME}/${projectName}/${weblogicName}/warn.log</file>
        <!--只输出ERROR级别的日志-->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>WARN</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        
        <!--根据日期滚动输出日志策略-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_HOME}/${projectName}/${weblogicName}/${history}/%d{yyyy-MM-dd}-warn.log</fileNamePattern>
            <!--日志保留天数-->
            <maxHistory>${logDays}</maxHistory>
        </rollingPolicy>
        
        <encoder>
            <pattern>[${springProfilesActive}]${log_style}</pattern>
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值