logback-spring.xml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration>
  3. <include resource="org/springframework/boot/logging/logback/base.xml" />
  4. <logger name="org.springframework" level="ERROR"/>
  5. <logger name="org.springboot" level="ERROR" />
  6. <!-- 开发、测试环境 -->
  7. <springProfile name="dev,test">
  8. <logger name="org.springframework" level="ERROR"/>
  9. <logger name="org.springboot" level="ERROR" />
  10. <logger name="io.platform" level="DEBUG" />
  11. </springProfile>
  12. <!-- 生产环境 -->
  13. <springProfile name="pro">
  14. <logger name="org.springframework.web" level="ERROR"/>
  15. <logger name="org.springboot.sample" level="ERROR" />
  16. <logger name="io.platform" level="ERROR" />
  17. </springProfile>
  18. <contextName>web-rest</contextName>
  19. <property name="logback.logdir" value="./log/"/>
  20. <property name="logback.appname" value="sys-rest"/>
  21. <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
  22. <!--如果只是想要 Info 级别的日志,只是过滤 info 还是会输出 Error 日志,因为 Error 的级别高,
  23. 所以我们使用下面的策略,可以避免输出 Error 的日志-->
  24. <filter class="ch.qos.logback.classic.filter.LevelFilter">
  25. <!--过滤 Error-->
  26. <level>ERROR</level>
  27. <!--匹配到就禁止-->
  28. <onMatch>DENY</onMatch>
  29. <!--没有匹配到就允许-->
  30. <onMismatch>ACCEPT</onMismatch>
  31. </filter>
  32. <!--日志名称,如果没有File 属性,那么只会使用FileNamePattern的文件路径规则
  33. 如果同时有<File>和<FileNamePattern>,那么当天日志是<File>,明天会自动把今天
  34. 的日志改名为今天的日期。即,<File> 的日志都是当天的。
  35. -->
  36. <File>${logback.logdir}${logback.appname}.log</File>
  37. <!--滚动策略,按照时间滚动 TimeBasedRollingPolicy-->
  38. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  39. <!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间-->
  40. <FileNamePattern>${logback.logdir}${logback.appname}.%d{yyyy-MM-dd}.log</FileNamePattern>
  41. <!--只保留最近90天的日志-->
  42. <maxHistory>90</maxHistory>
  43. <!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志-->
  44. <totalSizeCap>1GB</totalSizeCap>
  45. </rollingPolicy>
  46. <!--日志输出编码格式化-->
  47. <encoder>
  48. <charset>UTF-8</charset>
  49. <pattern>%d [%thread] %-5level %logger{36} %line - %msg%n</pattern>
  50. </encoder>
  51. </appender>
  52. <root level="info">
  53. <appender-ref ref="fileInfoLog" />
  54. </root>
  55. </configuration>