logback-spring.xml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration>
  3. <property name="PATH" value="./log"/>
  4. <property name="APP_NAME" value="tal-data" />
  5. <!-- 用于在console输出日志 -->
  6. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  7. <encoder>
  8. <Pattern>%d{YYYY-MM-dd HH:mm:ss.SSS} %-5level [%thread] %X{traceId} %logger:%line %msg%n</Pattern>
  9. <!-- 使用系统默认的编码方式 -->
  10. <!-- <charset>gbk</charset> -->
  11. </encoder>
  12. </appender>
  13. <!-- 用于写入日志文件 -->
  14. <appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  15. <file>${PATH}/${APP_NAME}-trace.log</file>
  16. <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
  17. <!-- 每天切换日志文件 -->
  18. <fileNamePattern>${PATH}/${APP_NAME}-trace.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  19. <!-- 单个文件最大值,超过会切换新的日志文件,此配置最大不超过20GB -->
  20. <maxFileSize>100MB</maxFileSize>
  21. <!-- 最多保存60天日志 -->
  22. <maxHistory>60</maxHistory>
  23. <!-- 最大占用20GB空间 -->
  24. <totalSizeCap>20GB</totalSizeCap>
  25. </rollingPolicy>
  26. <encoder>
  27. <Pattern>%d{YYYY-MM-dd HH:mm:ss.SSS} %-5level [%thread] %X{traceId} %logger:%line %msg%n</Pattern>
  28. <charset>UTF-8</charset>
  29. </encoder>
  30. </appender>
  31. <!-- 错误日志写入文件 -->
  32. <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  33. <file>${PATH}/${APP_NAME}-error.log</file>
  34. <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
  35. <!-- 每天切换日志文件 -->
  36. <fileNamePattern>${PATH}/${APP_NAME}-error.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
  37. <!-- 单个文件最大值,超过会切换新的日志文件,此配置最大不超过20GB -->
  38. <maxFileSize>100MB</maxFileSize>
  39. <!-- 最多保存60天日志 -->
  40. <maxHistory>60</maxHistory>
  41. <!-- 最大占用20GB空间 -->
  42. <totalSizeCap>20GB</totalSizeCap>
  43. </rollingPolicy>
  44. <encoder>
  45. <Pattern>%d{YYYY-MM-dd HH:mm:ss.SSS} %-5level [%thread] %X{traceId} %logger:%line %msg%n</Pattern>
  46. <charset>UTF-8</charset>
  47. </encoder>
  48. <!-- 错误日志仅保存ERROR级别 -->
  49. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  50. <level>ERROR</level>
  51. <onMatch>ACCEPT</onMatch>
  52. <onMismatch>DENY</onMismatch>
  53. </filter>
  54. </appender>
  55. <!-- 1. 输出SQL 到控制台和文件-->
  56. <logger name="org.hibernate.SQL" additivity="false" level="DEBUG">
  57. <appender-ref ref="TRACE_FILE"/>
  58. <appender-ref ref="ERROR_FILE"/>
  59. <appender-ref ref="STDOUT"/>
  60. </logger>
  61. <!-- 2. 输出SQL 的参数到控制台和文件-->
  62. <logger name="org.hibernate.type.descriptor.sql.BasicBinder" additivity="false" level="TRACE">
  63. <appender-ref ref="TRACE_FILE"/>
  64. <appender-ref ref="ERROR_FILE"/>
  65. <appender-ref ref="STDOUT"/>
  66. </logger>
  67. <root level="INFO">
  68. <appender-ref ref="STDOUT"/>
  69. <appender-ref ref="TRACE_FILE"/>
  70. <appender-ref ref="ERROR_FILE"/>
  71. </root>
  72. </configuration>