1+ <?xml version =" 1.0" encoding =" UTF-8" ?>
2+ <configuration debug =" false" >
3+ <!-- 定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
4+ <property name =" LOG_HOME" value =" ./log" />
5+
6+ <!-- Console 输出设置 -->
7+ <appender name =" STDOUT" class =" ch.qos.logback.core.ConsoleAppender" >
8+ <withJansi >true</withJansi >
9+ <encoder >
10+ <pattern >%d{yyyy-MM-dd HH:mm:ss.SSS} %blue(%X{user}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{50}) - %cyan(%msg%n)
11+ </pattern >
12+ <charset >utf8</charset >
13+ </encoder >
14+ </appender >
15+
16+ <!-- 定时任务类设置单独日志文件 -->
17+ <appender name =" SCHEDULE-APPENDER" class =" ch.qos.logback.core.rolling.RollingFileAppender" >
18+ <!-- 没有File 文件不会按修改-->
19+ <File >${LOG_HOME}/schedule.log</File >
20+ <rollingPolicy class =" ch.qos.logback.core.rolling.TimeBasedRollingPolicy" >
21+ <!-- 日志文件输出的文件名-->
22+ <FileNamePattern >${LOG_HOME}/schedule.%d{yyyy-MM-dd}.%i.log</FileNamePattern >
23+ <!-- 日志文件保留天数-->
24+ <MaxHistory >7</MaxHistory >
25+ <!-- 日志文件最大的大小-->
26+ <timeBasedFileNamingAndTriggeringPolicy class =" ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP" >
27+ <maxFileSize >5MB</maxFileSize >
28+ </timeBasedFileNamingAndTriggeringPolicy >
29+ </rollingPolicy >
30+ <encoder class =" ch.qos.logback.classic.encoder.PatternLayoutEncoder" >
31+ <!-- 格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
32+ <pattern >%d{yyyy-MM-dd HH:mm:ss.SSS} %X{user} [%thread] %-5level %logger{50} - %msg%n</pattern >
33+ </encoder >
34+ <!-- 打印INFO及以上日志-->
35+ <filter class =" ch.qos.logback.classic.filter.ThresholdFilter" >
36+ <level >INFO</level >
37+ </filter >
38+ </appender >
39+
40+ <!-- 默认生成日志文件 -->
41+ <appender name =" INFO" class =" ch.qos.logback.core.rolling.RollingFileAppender" >
42+ <!-- 没有File 文件不会按修改-->
43+ <File >${LOG_HOME}/info.log</File >
44+ <rollingPolicy class =" ch.qos.logback.core.rolling.TimeBasedRollingPolicy" >
45+ <!-- 日志文件输出的文件名-->
46+ <FileNamePattern >${LOG_HOME}/info.%d{yyyy-MM-dd}.%i.log</FileNamePattern >
47+ <!-- 日志文件保留天数-->
48+ <MaxHistory >7</MaxHistory >
49+ <!-- 日志文件最大的大小-->
50+ <timeBasedFileNamingAndTriggeringPolicy class =" ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP" >
51+ <maxFileSize >5MB</maxFileSize >
52+ </timeBasedFileNamingAndTriggeringPolicy >
53+ </rollingPolicy >
54+ <encoder class =" ch.qos.logback.classic.encoder.PatternLayoutEncoder" >
55+ <!-- 格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
56+ <pattern >%d{yyyy-MM-dd HH:mm:ss.SSS} %X{user} [%thread] %-5level %logger{50} - %msg%n</pattern >
57+ </encoder >
58+ <!-- 只打印INFO日志 -->
59+ <filter class =" ch.qos.logback.classic.filter.LevelFilter" >
60+ <level >INFO</level >
61+ <onMatch >ACCEPT</onMatch >
62+ <onMismatch >DENY</onMismatch >
63+ </filter >
64+ </appender >
65+
66+ <appender name =" ERROR" class =" ch.qos.logback.core.rolling.RollingFileAppender" >
67+ <filter class =" ch.qos.logback.classic.filter.ThresholdFilter" >
68+ <level >ERROR</level >
69+ </filter >
70+ <File >${LOG_HOME}/error.log</File >
71+ <rollingPolicy class =" ch.qos.logback.core.rolling.TimeBasedRollingPolicy" >
72+ <!-- 日志文件输出的文件名-->
73+ <FileNamePattern >${LOG_HOME}/error.%d{yyyy-MM-dd}.%i.log</FileNamePattern >
74+ <!-- 日志文件保留天数-->
75+ <MaxHistory >30</MaxHistory >
76+ <!-- 日志文件最大的大小-->
77+ <timeBasedFileNamingAndTriggeringPolicy class =" ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP" >
78+ <maxFileSize >2MB</maxFileSize >
79+ </timeBasedFileNamingAndTriggeringPolicy >
80+ </rollingPolicy >
81+ <encoder class =" ch.qos.logback.classic.encoder.PatternLayoutEncoder" >
82+ <!-- 格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
83+ <pattern >%d{yyyy-MM-dd HH:mm:ss.SSS} %X{user} [%thread] %-5level %logger{50} - %msg%n</pattern >
84+ </encoder >
85+ </appender >
86+
87+ <!-- 这里的name和业务类中的getLogger中的字符串是一样的 additivity="false" 禁止这里的内容向上传递,否则会同时显示在默认日志中-->
88+ <logger name =" schedule" level =" INFO" additivity =" false" >
89+ <appender-ref ref =" SCHEDULE-APPENDER" />
90+ </logger >
91+
92+ <!-- 日志输出级别 -->
93+ <root level =" INFO" >
94+ <appender-ref ref =" STDOUT" />
95+ <appender-ref ref =" INFO" />
96+ <appender-ref ref =" ERROR" />
97+ </root >
98+ </configuration >
0 commit comments