1、了解logback:
logback是Spring Boot默认的日志系统,在 spring-boot-starter 中已经包含了logback的依赖,所以并不需要再去额外引用依赖。
其次,官网建议使用-spring变种形式来定义配置文件名,如果使用标准的配置路径,Spring可能不能完全控制日志初始化。
日志的存在可以帮助我们定位问题,较我们通常用的System.out来输出日志,后者会在一定程度上影响系统性能,因为System.out是一个同步操作,而Logger是一个异步操作。
2、配置步骤:
- 创建配置文件:logback-spring.xml
- 具体配置,可参考:
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true">
<!-- 日志文件名 -->
<property name="LOG_FILE" value="myLog" />
<!-- 日志文件路径 -->
<property name="LOG_PATH" value="D://Idea_work//zookeeper-study//quartz//log" />
<!-- 错误日志文件路径 -->
<property name="LOG_PATH2" value="D://Idea_work//zookeeper-study//quartz//errorLog" />
<!-- 控制台日志输出格式 -->
<property name="LOG_PATTERN_CONSOLE" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} --> %msg%n" />
<!-- 文件日志输出格式 -->
<property name="LOG_PATTERN_FILE" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} --> %msg%n" />
<!-- 控制台日志:输出全部日志到控制台 -->
<appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>${LOG_PATTERN_CONSOLE}</Pattern>
</encoder>
</appender>
<!-- 文件日志:输出全部日志到文件 -->
<appender name="fileLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${LOG_PATTERN_FILE}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 每天的文件日志 -->
<fileNamePattern>${LOG_PATH}/${LOG_FILE}-%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志文件保存7天,超过7天的自动删除 -->
<maxHistory>7</maxHistory>
</rollingPolicy>
</appender>
<!-- 错误日志:用于将错误日志输出到独立文件 -->
<appender name="errorFileLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${LOG_PATTERN_FILE}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_PATH2}/${LOG_FILE}-error-%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>7</maxHistory>
</rollingPolicy>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>WARN</level>
</filter>
</appender>
<!-- 设置日志级别,及需要记录日志的类 -->
<root>
<level value="INFO" />
<appender-ref ref="consoleLog" />
<appender-ref ref="fileLog" />
<appender-ref ref="errorFileLog" />
</root>
</configuration>
版权声明:本文为zxlzxcvbnm原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。