logback配置日志文件目录
配置log的时候遇到了很多问题。这里记录一下配置过程。方便以后再用。
logback-dev.xml的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="LOG_DIR" value="/data/log/jcl/" />
<property name="APP_NAME" value="jcl-dev" />
<!-- 控制台输出日志 -->
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder charset="UTF-8">
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{26} - %msg%n</Pattern>
</encoder>
</appender>
<!-- 文件输出日志(Default) -->
<appender name="default-log-file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOG_DIR}/${APP_NAME}(${HOSTNAME})-default-current.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_DIR}/history/${APP_NAME}(${HOSTNAME})-debug-%d{yyyy-MM-dd}.log.zip</fileNamePattern>
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<Pattern>[%d{HH:mm:ss}] [%thread] |%level| %marker %logger{50} -> %X{rpid} %msg %n%ex</Pattern>
</encoder>
</appender>
<!-- MyBatis日志 -->
<appender name="mybatis-log-file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOG_DIR}/${APP_NAME}(${HOSTNAME})-mybatis-current.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_DIR}/history/${APP_NAME}(${HOSTNAME})-mybatis-%d{yyyy-MM-dd}.log.zip</fileNamePattern>
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<Pattern>[%d{HH:mm:ss}] [%thread] |%level| %marker %logger{50} -> %X{rpid} %msg %n%ex</Pattern>
</encoder>
</appender>
<!-- 文件输出日志(ERROR) -->
<appender name="error-file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOG_DIR}/${APP_NAME}(${HOSTNAME})-error-current.log</File>
<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_DIR}/history/${APP_NAME}(${HOSTNAME})-error-%d{yyyy-MM}.log.zip</fileNamePattern>
<maxHistory>12</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<Pattern>[%d{dd|HH:mm:ss}] [%thread] |%level| %marker %logger{50} -> %X{rpid} %msg %n%ex</Pattern>
</encoder>
</appender>
<logger name="com.example.mapper" level="INFO" >
<appender-ref ref="mybatis-log-file" />
</logger>
<logger name="search-log" level="ERROR" >
</logger>
<logger name="com.example.mapper" level="DEBUG" >
<appender-ref ref="stdout" />
</logger>
<root level="INFO">
<appender-ref ref="stdout" />
</root>
</configuration>
如果需要输入到文件中则修改为
然后springboot的配置文件为
logging:
config: classpath:logback-dev.xml
还没有评论,来说两句吧...