SpringBoot集成了logback,所以只需要配置一下就可以,这里使用自带Spring profile方式进行多环境配置。
简介
Spring profile是Spring 3引入的概念,主要用在项目多环境运行的情况下,通过激活方式实现多环境切换,省去多环境切换时配置参数和文件的修改,相比较Maven profile简单实用,易于上手。并且Spring profile提供了多种激活方法,例如配置文件,注解,jvm参数设置等等
下面我们就开始进行日志文件的搭配吧
首先是在项目中创建以下3个文件,其中logback-dev.xml 是我们的日志文件配置
appliication 是我们的主程序配置,下面的dev 则代表我们的生产环境配置
下面我们来看看各文件中的内容;
这个代表读取日志的配置文件
这个代表我们加载dev的配置文件
下面是我们的日志文件的配置信息
<?xml version="1.0" encoding="UTF-8"?>
<!-- 不分级别同步文件日志输出配置 -->
<configuration>
<!-- 日志级别 -->
<property name="logLevel" value="INFO"></property>
<!-- 日志地址 -->
<property name="logPath" value="./logs"></property>
<!-- 最大保存时间 -->
<property name="maxHistory" value="10"/>
<!-- 异步缓冲队列的深度,该值会影响性能.默认值为256 -->
<property name="queueSize" value="512"></property>
<!-- 控制台打印日志的相关配置 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- 日志格式 -->
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
</appender>
<!-- 文件保存日志的相关配置,同步 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 保存日志文件的路径 -->
<file>${logPath}/cms.log</file>
<!-- 日志格式 -->
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>${logLevel}</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${logPath}/cms-%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 最大保存时间-->
<maxHistory>${maxHistory}</maxHistory>
</rollingPolicy>
</appender>
<!--配置mybatis sql 日志-->
<logger name="com.ljw.dao" level="DEBUG"/>
<!-- 基于INFO处理日志:具体控制台或者文件对日志级别的处理还要看所在appender配置的filter,如果没有配置filter,则使用root配置 -->
<root level="${logLevel}">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>
到这里我们的日志就已经集成上去了,接下来只要在代码中使用就可以了
接下来我们直接启动项目,然后访问路径我们就可以看到我们的日志文件已经生成,日志信息也已经在里面了!