• springboot logback 配置 通配符不行就这样


    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
    <property name="log.home" value="D:\logs" />

    <!-- 彩色日志 -->
    <!-- 彩色日志依赖的渲染类 -->
    <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" />
    <!-- 彩色日志格式 -->
    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{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}}" />
    <!-- Console 输出设置 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
    <pattern>${CONSOLE_LOG_PATTERN}</pattern>
    <charset>utf8</charset>
    </encoder>
    </appender>

    <!-- 文件保存日志的相关配置 ERROR -->
    <appender name="ERROR-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <!-- 保存日志文件的路径 -->
    <!--<file>D:/logs/error/error.log</file>-->
    <!-- 日志格式 -->
    <encoder>
    <pattern>%d{yyyy-MM-dd HH:mm:ss} [%class:%line] - %m%n</pattern>
    </encoder>
    <!-- 日志级别过滤器 -->
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
    <!-- 过滤的级别 -->
    <level>ERROR</level>
    <!-- 匹配时的操作:接收(记录) -->
    <onMatch>ACCEPT</onMatch>
    <!-- 不匹配时的操作:拒绝(不记录) -->
    <onMismatch>DENY</onMismatch>
    </filter>
    <!-- 循环政策:基于时间创建日志文件 -->
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    <!-- 日志文件名格式 -->
    <fileNamePattern>${log.home}/error/%d{yyyy-MM-dd}-error.log</fileNamePattern>
    <!-- 最大保存时间:30天-->
    <maxHistory>30</maxHistory>
    </rollingPolicy>

    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
    <!-- 日志文件最大大小 -->
    <MaxFileSize>100MB</MaxFileSize>
    </triggeringPolicy>
    </appender>

    <!-- 文件保存日志的相关配置 INFO -->
    <appender name="INFO-OUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <!-- 保存日志文件的路径 -->
    <!--<file>D:/logs/info/info.log</file>-->
    <!-- 日志格式 -->
    <encoder>
    <pattern>%d{yyyy-MM-dd HH:mm:ss} [%class:%line] - %m%n</pattern>
    </encoder>
    <!-- 日志级别过滤器 -->
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
    <!-- 过滤的级别 -->
    <level>INFO</level>
    <!-- 匹配时的操作:接收(记录) -->
    <onMatch>ACCEPT</onMatch>
    <!-- 不匹配时的操作:拒绝(不记录) -->
    <onMismatch>DENY</onMismatch>
    </filter>
    <!-- 循环政策:基于时间创建日志文件 -->
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    <!-- 日志文件名格式 -->
    <fileNamePattern>${log.home}/info/%d{yyyy-MM-dd}-info.log</fileNamePattern>
    <!-- 最大保存时间:30天-->
    <maxHistory>30</maxHistory>
    </rollingPolicy>

    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
    <!-- 日志文件最大大小 -->
    <MaxFileSize>100MB</MaxFileSize>
    </triggeringPolicy>
    </appender>

    <!-- 输出mybatis的sql语句,没有这句就无法输出mybatis的sql语句,name属性指定到要输出日志的dao,即mybatis要代理的dao 这里本来是要弄个** 通配符的,但是不行,就只好将最外层的文件夹获取就行了。我的本来是com.demo.module.sys  com.demo.module.user等等module下面有好多子文件夹,子文件里面才是 mapper  (dao) 通配符不行。-->
    <logger name="com.demo.module" level="DEBUG" />

    <!-- 基于info处理日志:具体控制台或者文件对日志级别的处理还要看所在appender配置的filter,如果没有配置filter,则使用root配置 -->
    <root level="info">
    <appender-ref ref="STDOUT"/>
    <appender-ref ref="INFO-OUT" />
    <appender-ref ref="ERROR-OUT" />
    </root>
    </configuration>

    -------这里是application.properties的logback配置-----------------

    logging.config=classpath:logback-boot.xml

  • 相关阅读:
    JSP前三章测试改错
    实现文件上传
    Url和Uri的区别
    四套读写文件方案
    C++第一课
    数据聚合架构模式
    高并发怎么解决?
    为什么做不了软件架构师
    完整版go-mysql-elasticsearch安装步骤
    安装GO
  • 原文地址:https://www.cnblogs.com/duanqiao123/p/10017779.html
Copyright © 2020-2023  润新知