一 概述
1.1 需求描述
想通过将日志按照不同class进行打印输出,但是上一篇没有包含sql日志,本编就详细介绍根据不同类日志输出到不同文件且包含sql日志。
二操作
2.1 工程概况
2.2 logback的配置
2.2.1 usercontroller类logback文件定义
1.日志文件的声明
<!-- 生成用户日志文件 --> <appender name="userFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 日志名称 --> <file>${LOG_PATH}/uc/usercontroller.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/uc/usercontroller.%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!-- 日志最大 50MB --> <maxFileSize>50MB</maxFileSize> <!-- 保存 30 天 --> <maxHistory>30</maxHistory> <!-- <totalSizeCap>10GB</totalSizeCap> <!– 总日志大小 –>--> </rollingPolicy> <encoder> <pattern>${LOG_FILE_PATTERN}</pattern> </encoder> </appender>
2 定义sql输出日志级别
sql的输出:这一步很重要,不然sql就不会输入到制定的文件中。
<logger name="com.ljf.spring.boot.demo.persistence.dao.UsersMapper" level="debug"> <appender-ref ref="userFILE"/> </logger>
3.定义整个文件常规日志输出:
<!--用户 --> <logger name="userLog" level="INFO" additivity="false"> <appender-ref ref="CONSOLE"/> <appender-ref ref="userFILE"/> </logger>
2.2.2 bikecontroller类logback文件定义
1.声明
<!-- 生成用户日志文件 --> <appender name="bikeFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- 日志名称 --> <file>${LOG_PATH}/bike/bike.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <fileNamePattern>${LOG_PATH}/bike/bike.%d{yyyy-MM-dd}.%i.log</fileNamePattern> <!-- 日志最大 50MB --> <maxFileSize>50MB</maxFileSize> <!-- 保存 30 天 --> <maxHistory>30</maxHistory> <!-- <totalSizeCap>10GB</totalSizeCap> <!– 总日志大小 –>--> </rollingPolicy> <encoder> <pattern>${LOG_FILE_PATTERN}</pattern> </encoder> </appender>
2 定义sql输出日志级别
sql的输出:这一步很重要,不然sql就不会输入到制定的文件中。
<logger name="com.ljf.spring.boot.demo.persistence.dao.BikeMapper" level="debug"> <appender-ref ref="bikeFILE"/> </logger>
3.定义整个文件常规日志输出:
<!--bike --> <logger name="bikeLog" level="INFO" additivity="false"> <appender-ref ref="CONSOLE"/> <appender-ref ref="bikeFILE"/> </logger>
2.3 logback文件的加载使用
1.定义sql语句输出到文件中加载类和风格;以及加载应用到的logback文件
2.4 在具体不同类中使用各自的log日志文件输出
1.usercontroller类中进行引用
2.bikecontroller类中进行引用
2.5 启动测试
1.启动程序后,不同类的日志生成到不同文件目录下
2.对各个类进行访问
1. user:
2.bike
3.查看日志
user:
bike:
ok! 到此大工搞成!!!