当前位置:   article > 正文

SpringBoot配置logback日志 (六)_ch.qos.logback.classic.db

ch.qos.logback.classic.db

Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-classic完整实现SLF4J API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging。logback-access访问模块与Servlet容器集成提供通过Http来访问日志的功能。

vlogback,slf4j,log4j

logback,slf4j,log4j之间的关系

Slf4j是The Simple Logging Facade for Java的简称,是一个简单日志门面抽象框架,它本身只提供了日志Facade API和一个简单的日志类实现,一般常配合Log4j,LogBack,java.util.logging使用。Slf4j作为应用层的Log接入时,程序可以根据实际应用场景动态调整底层的日志实现框架(Log4j/LogBack/JdkLog...);

LogBack和Log4j都是开源日记工具库,LogBack是Log4j的改良版本,比Log4j拥有更多的特性,同时也带来很大性能提升。

添加引用

  1. <dependency>
  2. <groupId>org.projectlombok</groupId>
  3. <artifactId>lombok</artifactId>
  4. <optional>true</optional>
  5. </dependency>

如果idea工具会自行提示错误,不影响程序运行,可以尝试下载lombok的插件

SpringBoot(八)配置logback日志

Logback.xml配置

Logback默认配置

如果配置文件 logback-test.xml 和 logback.xml 都不存在,那么 logback 默认地会调用BasicConfigurator ,创建一个最小化配置。最小化配置由一个关联到根 logger 的ConsoleAppender 组成。输出用模式为%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 的 PatternLayoutEncoder 进行格式化。root logger 默认级别是 DEBUG。

Logback默认配置步骤:

①. 尝试在 classpath 下查找文件 logback-test.xml;

②. 如果文件不存在,则查找文件 logback.xml;

③. 如果两个文件都不存在,logback 用 Bas icConfigurator 自动对自己进行配置,这会导致记录输出到控制台。

添加Logback.xml

SpringBoot(八)配置logback日志

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration debug="false">
  3. <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
  4. <property name="LOG_HOME" value="E:\work\log" />
  5. <!-- 控制台输出 -->
  6. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  7. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  8. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  9. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  10. </encoder>
  11. </appender>
  12. <!-- 按照每天生成日志文件 -->
  13. <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  14. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  15. <!--日志文件输出的文件名-->
  16. <FileNamePattern>${LOG_HOME}/log.%d{yyyy-MM-dd}.log</FileNamePattern>
  17. <!--日志文件保留天数-->
  18. <MaxHistory>30</MaxHistory>
  19. </rollingPolicy>
  20. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  21. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  22. <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  23. </encoder>
  24. <!--日志文件最大的大小-->
  25. <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
  26. <MaxFileSize>10MB</MaxFileSize>
  27. </triggeringPolicy>
  28. </appender>
  29. <!-- show parameters for hibernate sql 专为 Hibernate 定制 -->
  30. <logger name="org.hibernate.type.descriptor.sql.BasicBinder" level="TRACE" />
  31. <logger name="org.hibernate.type.descriptor.sql.BasicExtractor" level="DEBUG" />
  32. <logger name="org.hibernate.SQL" level="DEBUG" />
  33. <logger name="org.hibernate.engine.QueryParameters" level="DEBUG" />
  34. <logger name="org.hibernate.engine.query.HQLQueryPlan" level="DEBUG" />
  35. <!--myibatis log configure-->
  36. <logger name="com.apache.ibatis" level="TRACE"/>
  37. <logger name="java.sql.Connection" level="DEBUG"/>
  38. <logger name="java.sql.Statement" level="DEBUG"/>
  39. <logger name="java.sql.PreparedStatement" level="DEBUG"/>
  40. <!-- 日志输出级别 -->
  41. <root level="ERROR">
  42. <appender-ref ref="STDOUT" />
  43. <appender-ref ref="FILE" />
  44. </root>
  45. <!--日志异步到数据库 -->
  46. <!--<appender name="DB" class="ch.qos.logback.classic.db.DBAppender">-->
  47. <!--&lt;!&ndash;日志异步到数据库 &ndash;&gt;-->
  48. <!--<connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">-->
  49. <!--&lt;!&ndash;连接池 &ndash;&gt;-->
  50. <!--<dataSource class="com.mchange.v2.c3p0.ComboPooledDataSource">-->
  51. <!--<driverClass>com.mysql.jdbc.Driver</driverClass>-->
  52. <!--<url>jdbc:mysql://127.0.0.1:3306/databaseName</url>-->
  53. <!--<user>root</user>-->
  54. <!--<password>root</password>-->
  55. <!--</dataSource>-->
  56. <!--</connectionSource>-->
  57. <!--</appender>-->
  58. </configuration>

添加测试代码

SpringBoot(八)配置logback日志

日志效果

SpringBoot(八)配置logback日志

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/312783?site
推荐阅读
相关标签
  

闽ICP备14008679号