4 changed files with 48 additions and 126 deletions
@ -1,116 +0,0 @@ |
|||||
<?xml version="1.0" encoding="UTF-8"?> |
|
||||
<configuration> |
|
||||
<property name="log.path" value="./logs"/> |
|
||||
<property name="console.log.pattern" |
|
||||
value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/> |
|
||||
<property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"/> |
|
||||
|
|
||||
<!-- 控制台输出 --> |
|
||||
<appender name="console" class="ch.qos.logback.core.ConsoleAppender"> |
|
||||
<encoder> |
|
||||
<pattern>${log.pattern}</pattern> |
|
||||
<charset>utf-8</charset> |
|
||||
</encoder> |
|
||||
</appender> |
|
||||
|
|
||||
<!-- 控制台输出 --> |
|
||||
<appender name="file_console" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
|
||||
<file>${log.path}/sys-console.log</file> |
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
|
||||
<!-- 日志文件名格式 --> |
|
||||
<fileNamePattern>${log.path}/sys-console.%d{yyyy-MM-dd}.log</fileNamePattern> |
|
||||
<!-- 日志最大 1天 --> |
|
||||
<maxHistory>1</maxHistory> |
|
||||
</rollingPolicy> |
|
||||
<encoder> |
|
||||
<pattern>${log.pattern}</pattern> |
|
||||
<charset>utf-8</charset> |
|
||||
</encoder> |
|
||||
<filter class="ch.qos.logback.classic.filter.ThresholdFilter"> |
|
||||
<!-- 过滤的级别 --> |
|
||||
<level>INFO</level> |
|
||||
</filter> |
|
||||
</appender> |
|
||||
|
|
||||
<!-- 系统日志输出 --> |
|
||||
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
|
||||
<file>${log.path}/sys-info.log</file> |
|
||||
<!-- 循环政策:基于时间创建日志文件 --> |
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
|
||||
<!-- 日志文件名格式 --> |
|
||||
<fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern> |
|
||||
<!-- 日志最大的历史 60天 --> |
|
||||
<maxHistory>60</maxHistory> |
|
||||
</rollingPolicy> |
|
||||
<encoder> |
|
||||
<pattern>${log.pattern}</pattern> |
|
||||
</encoder> |
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter"> |
|
||||
<!-- 过滤的级别 --> |
|
||||
<level>INFO</level> |
|
||||
<!-- 匹配时的操作:接收(记录) --> |
|
||||
<onMatch>ACCEPT</onMatch> |
|
||||
<!-- 不匹配时的操作:拒绝(不记录) --> |
|
||||
<onMismatch>DENY</onMismatch> |
|
||||
</filter> |
|
||||
</appender> |
|
||||
|
|
||||
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
|
||||
<file>${log.path}/sys-error.log</file> |
|
||||
<!-- 循环政策:基于时间创建日志文件 --> |
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
|
||||
<!-- 日志文件名格式 --> |
|
||||
<fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern> |
|
||||
<!-- 日志最大的历史 60天 --> |
|
||||
<maxHistory>60</maxHistory> |
|
||||
</rollingPolicy> |
|
||||
<encoder> |
|
||||
<pattern>${log.pattern}</pattern> |
|
||||
</encoder> |
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter"> |
|
||||
<!-- 过滤的级别 --> |
|
||||
<level>ERROR</level> |
|
||||
<!-- 匹配时的操作:接收(记录) --> |
|
||||
<onMatch>ACCEPT</onMatch> |
|
||||
<!-- 不匹配时的操作:拒绝(不记录) --> |
|
||||
<onMismatch>DENY</onMismatch> |
|
||||
</filter> |
|
||||
</appender> |
|
||||
|
|
||||
<!-- info异步输出 --> |
|
||||
<appender name="async_info" class="ch.qos.logback.classic.AsyncAppender"> |
|
||||
<!-- 不丢失日志.默认的,如果队列的80%已,则会丢弃TRACT、DEBUG、INFO级别的日志 --> |
|
||||
<discardingThreshold>0</discardingThreshold> |
|
||||
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> |
|
||||
<queueSize>512</queueSize> |
|
||||
<!-- 添加附加的appender,最多只能添加一个 --> |
|
||||
<appender-ref ref="file_info"/> |
|
||||
</appender> |
|
||||
|
|
||||
<!-- error异步输出 --> |
|
||||
<appender name="async_error" class="ch.qos.logback.classic.AsyncAppender"> |
|
||||
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 --> |
|
||||
<discardingThreshold>0</discardingThreshold> |
|
||||
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 --> |
|
||||
<queueSize>512</queueSize> |
|
||||
<!-- 添加附加的appender,最多只能添加一个 --> |
|
||||
<appender-ref ref="file_error"/> |
|
||||
</appender> |
|
||||
|
|
||||
<!-- 开发环境下的日志配置 --> |
|
||||
<springProfile name="dev"> |
|
||||
<root level="INFO"> |
|
||||
<appender-ref ref="console" /> |
|
||||
</root> |
|
||||
</springProfile> |
|
||||
<!-- 生产环境下的日志配置 --> |
|
||||
<springProfile name="prod"> |
|
||||
<root level="INFO"> |
|
||||
<appender-ref ref="console" /> |
|
||||
<appender-ref ref="async_info" /> |
|
||||
<appender-ref ref="async_error" /> |
|
||||
<appender-ref ref="file_console" /> |
|
||||
</root> |
|
||||
</springProfile> |
|
||||
|
|
||||
</configuration> |
|
||||
@ -0,0 +1,48 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<configuration> |
||||
|
<include resource="org/springframework/boot/logging/logback/defaults.xml" /> |
||||
|
<property name="LOG_PATH" value="log"/> |
||||
|
<property name="APP_NAME" value="im-admin"/> |
||||
|
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> |
||||
|
<filter class="ch.qos.logback.classic.filter.ThresholdFilter"> |
||||
|
<level>info</level> |
||||
|
</filter> |
||||
|
<encoder> |
||||
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> |
||||
|
<charset>UTF-8</charset> |
||||
|
</encoder> |
||||
|
</appender> |
||||
|
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
||||
|
<file>${LOG_PATH}/${APP_NAME}.log</file> |
||||
|
<encoder> |
||||
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern> |
||||
|
<charset>UTF-8</charset> |
||||
|
</encoder> |
||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> |
||||
|
<fileNamePattern>${logging.path}/${APP_NAME}-%d{yyyy-MM-dd}.%i.log</fileNamePattern> |
||||
|
<maxFileSize>100MB</maxFileSize> |
||||
|
<maxHistory>60</maxHistory> |
||||
|
<totalSizeCap>20GB</totalSizeCap> |
||||
|
</rollingPolicy> |
||||
|
</appender> |
||||
|
<!-- 开发环境下的日志配置 --> |
||||
|
<springProfile name="dev"> |
||||
|
<root level="INFO"> |
||||
|
<appender-ref ref="CONSOLE"/> |
||||
|
</root> |
||||
|
</springProfile> |
||||
|
<!-- 测试环境下的日志配置 --> |
||||
|
<springProfile name="test"> |
||||
|
<root level="INFO"> |
||||
|
<appender-ref ref="CONSOLE"/> |
||||
|
<appender-ref ref="FILE"/> |
||||
|
</root> |
||||
|
</springProfile> |
||||
|
<!-- 生产环境下的日志配置 --> |
||||
|
<springProfile name="prod"> |
||||
|
<root level="INFO"> |
||||
|
<appender-ref ref="CONSOLE"/> |
||||
|
<appender-ref ref="FILE"/> |
||||
|
</root> |
||||
|
</springProfile> |
||||
|
</configuration> |
||||
Loading…
Reference in new issue