Spring boot日志配置
步骤1:增加logback配置文件
注意:名字是logback.xml或者是logback-spring.xml,推荐是logback-spring.xml,为啥?因为spring boot框架默认会去寻找名字为这个的配置,并增加一些特性。
步骤2:logback.xml的内容配置
<?xml version="1.1" encoding="UTF-8"?>
<configuration>
<springProperty scope="context" name="logPath" source="logging.path"/>
<springProperty scope="context" name="serverName" source="server.name"/>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date|%thread|%X{invokeNo}|%level|%logger{0}|%msg%n</pattern>
</encoder>
</appender>
<appender name="rollinginfoFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${logPath}/${serverName}/${serverName}.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${logPath}/${serverName}/${serverName}.%i.log</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>500MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%date|%thread|%X{invokeNo}|%level|%logger{0}|%msg%n</pattern>
</encoder>
</appender>
<logger name="com.alibaba" level="${loggingLevel}">
<appender-ref ref="rollinginfoFile" />
</logger>
<logger name="org.apache.ibatis" level="${loggingLevel}">
<appender-ref ref="rollinginfoFile" />
</logger> -->
<root level="${loggingLevel}">
<appender-ref ref="rollinginfoFile" />
<appender-ref ref="console" />
</root>
</configuration>
注意:
<springProperty scope="context" name="logPath" source="logging.path"/>
<springProperty scope="context" name="serverName" source="server.name"/>
logging.path和server.name都是我在applicaiton-{profile}.xml中定义的变量,此处一定要使用springProperty再引用一下,否则下面是使用不到的。
奇怪的是loggingLevel也是在配置文件中定义的,但是这个就不需要中转一下,可以直接通过${loggingLevel}使用。
项目可以参考:https://github.com/BruceZhangXL/wolf
还没有评论,来说两句吧...