1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > spring boot日志配置文件(彩色日志)logback-spring.xml

spring boot日志配置文件(彩色日志)logback-spring.xml

时间:2020-05-28 05:30:52

相关推荐

spring boot日志配置文件(彩色日志)logback-spring.xml

文章目录

前言✨彩色日志✨输出到控制台✨输出到文件1.输出所有日志2.输出错误日志 ✨配置不同环境下的日志级别✨完整的logback-spring.xml文件配置✨文件下载

前言

spring boot项目记录日志、每日日志归档、彩色日志都会在logback-spring.xml文件中进行配置。给大家分享完整的日志配置信息,以及配置的各种含义。

✨彩色日志

<!-- 彩色日志(IDE下载插件才可以生效) --><!-- 彩色日志依赖的渲染类 --><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}}" />

实现结果

✨输出到控制台

<!--输出到控制台 --><appender name="CONSOLE"class="ch.qos.logback.core.ConsoleAppender"><!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息 --><filter class="ch.qos.logback.classic.filter.ThresholdFilter"><level>info</level></filter><encoder><Pattern>${CONSOLE_LOG_PATTERN}</Pattern><!-- 设置字符集 --><charset>UTF-8</charset></encoder></appender>

✨输出到文件

每日日志文件及日志归档。

1.输出所有日志

<!-- 时间滚动输出 所有level 日志 --><appender name="ALL_FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文件的路径及文件名 --><file>${log.path}/log_all.log</file><!--日志文件输出格式 --><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern><charset>UTF-8</charset> <!-- 设置字符集 --></encoder><!-- 日志记录器的滚动策略,按日期,按大小记录 --><rollingPolicyclass="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志归档 --><fileNamePattern>${log.path}/debug/log-all-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy><!-- all日志文件记录debug级别的 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>debug</level></filter></appender>

注:本示例所有日志文件记录为debug级别的,可以不设置,记录所有级别日志

2.输出错误日志

<!-- 时间滚动输出 level为 ERROR 日志 --><appender name="ERROR_FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文件的路径及文件名 --><file>${log.path}/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><!-- 日志记录器的滚动策略,按日期,按大小记录 --><rollingPolicyclass="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy><!-- 此日志文件只记录ERROR级别的 --><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>ERROR</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender>

结果:

✨配置不同环境下的日志级别

开发环境下设置最低级别为debug水平:

<!--开发环境:打印控制台 --><springProfile name="dev"><root level="debug"><appender-ref ref="CONSOLE"/></root></springProfile>

✨完整的logback-spring.xml文件配置

<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="10 seconds"><contextName>logback</contextName><property name="log.path" value="log" /><!-- 彩色日志(IDE下载插件才可以生效) --><!-- 彩色日志依赖的渲染类 --><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}}" /><!--输出到控制台 --><appender name="CONSOLE"class="ch.qos.logback.core.ConsoleAppender"><encoder><Pattern>${CONSOLE_LOG_PATTERN}</Pattern><!-- 设置字符集 --><charset>UTF-8</charset></encoder></appender><!--输出到文件 --><!-- 时间滚动输出 所有level 日志 --><appender name="ALL_FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/log_all.log</file><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern><charset>UTF-8</charset> </encoder><rollingPolicyclass="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${log.path}/debug/log-all-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文件保留天数 --><maxHistory>15</maxHistory></rollingPolicy></appender><!-- 时间滚动输出 level为 ERROR 日志 --><appender name="ERROR_FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/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><rollingPolicyclass="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicyclass="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>100MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><maxHistory>15</maxHistory></rollingPolicy><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>ERROR</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender><!--开发环境:打印控制台 --><springProfile name="dev"><logger name="com.xxx.xxx" level="debug" /></springProfile><root level="info"><appender-ref ref="CONSOLE" /><appender-ref ref="ALL_FILE" /><appender-ref ref="ERROR_FILE" /></root><!-- 调整nacos日志级别 --><logger name="com.alibaba.nacos.client.naming" level="WARN"/></configuration>

✨文件下载

若想查看完整中文注释,了解配置功能,可下载文件

下载后直接覆盖原文件

下载链接:logback-spring.xml

<!--开发环境:打印控制台 --><springProfile name="dev"><!-- 改为自己项目的包 --><logger name="com.xxx.xxx" level="debug" /></springProfile>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。