美文网首页
华哥logback配置

华哥logback配置

作者: 我是电饭煲 | 来源:发表于2020-03-31 00:09 被阅读0次

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">

<!-- 日志级别从低到高:trace < debug < info < warn < error < fatal -->

<!-- 日志上下文名称-->
<contextName>logback</contextName>

<!-- 全局的日志级别,下面的所有配置只记录大于或等于此级别的日志信息(除了动态数据源) -->
<property name="log.level" value="info"/>

<!-- 日志文件的目录路径-->
<property name="log.path" value="/var/log/manhattan"/>

<!--输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
    <!--此日志Filter在开发环境才启用,只配置最低级别,控制台输出的日志级别是大于或等于此级别的日志信息 -->
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>${log.level}</level>
    </filter>
    <!-- 日志输出格式 -->
    <encoder>
        <charset>UTF-8</charset>
        <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36}.%M\(%line\) - %msg%n
        </pattern>
    </encoder>
</appender>

<!--输出到文件-->
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <!-- 正在记录的日志文件的路径 -->
    <file>${log.path}/${log.level}.log</file>
    <!-- 日志输出格式 -->
    <encoder>
        <charset>UTF-8</charset>
        <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36}.%M\(%line\) - %msg%n
        </pattern>
    </encoder>
    <!-- 控制日志文件只记录大于或等于此级别的日志信息 -->
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>${log.level}</level>
    </filter>
    <!-- 日志滚动策略 -->
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!--日志文件保留天数-->
        <maxHistory>30</maxHistory>
        <!-- 日志归档 -->
        <fileNamePattern>${log.path}/${log.level}/${log.level}-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
        <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
            <maxFileSize>100MB</maxFileSize>
        </timeBasedFileNamingAndTriggeringPolicy>
    </rollingPolicy>
</appender>

<!-- 指定最基础的日志输出级别 -->
<root level="${log.level}">
    <appender-ref ref="console"/>
    <appender-ref ref="file"/>
</root>

<!-- 将动态数据源的日志信息输出到控制台 -->
<appender name="dynamic_datasource_console" class="ch.qos.logback.core.ConsoleAppender">
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>debug</level>
    </filter>
    <encoder>
        <charset>UTF-8</charset>
        <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36}.%M\(%line\) - %msg%n
        </pattern>
    </encoder>
</appender>

<!-- 打印动态数据源的日志信息,开发环境才启用 -->
<logger name="com.baomidou.dynamic" level="debug" additivity="false">
    <appender-ref ref="dynamic_datasource_console"/>
</logger>

</configuration>

相关文章

网友评论

      本文标题:华哥logback配置

      本文链接:https://www.haomeiwen.com/subject/uaaovctx.html