123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration>
- <springProperty scope="context" name="LOG_MAX_HISTORY" source="logging.maxHistory"/>
- <!-- 日志根目录-->
- <springProperty scope="context" name="LOG_HOME" source="logging.path"/>
- <!-- 日志级别 -->
- <springProperty scope="context" name="LOG_LEVEL" source="logging.fdkk.level" defaultValue="DEBUG"/>
- <!-- 标识这个"STDOUT" 将会添加到这个logger -->
- <springProperty scope="context" name="STDOUT" source="log.stdout" defaultValue="STDOUT"/>
- <!-- 日志文件名称-->
- <property name="LOG_PREFIX" value="bim"/>
- <!-- 日志文件编码-->
- <property name="LOG_CHARSET" value="UTF-8"/>
- <!-- 日志文件路径+日期-->
- <property name="LOG_DIR" value="${LOG_HOME}/%d{yyyyMMdd}"/>
- <!--对日志进行格式化-->
- <!--文件大小,默认10MB-->
- <property name="MAX_FILE_SIZE" value="50MB"/>
- <!-- 配置日志的滚动时间 ,表示只保留最近 10 天的日志-->
- <property name="MAX_HISTORY" value="10"/>
- <!--输出到控制台-->
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
- <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- </appender>
- <!--输出到文件-->
- <appender name="0" class="ch.qos.logback.core.rolling.RollingFileAppender">
- </appender>
- <!-- 定义 ALL 日志的输出方式:-->
- <appender name="FILE_ALL" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!--日志文件路径,日志文件名称-->
- <File>${LOG_HOME}/${LOG_PREFIX}_all.log</File>
- <!-- 设置滚动策略,当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB -->
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!--日志文件路径,新的 ALL 日志文件名称,“ i ” 是个变量 -->
- <FileNamePattern>${LOG_DIR}/${LOG_PREFIX}_all%i.log</FileNamePattern>
- <!-- 配置日志的滚动时间 ,表示只保留最近 10 天的日志-->
- <MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
- <cleanHistoryOnStart>true</cleanHistoryOnStart>
- <!--当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB-->
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
- <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- </appender>
- <!-- 定义 INFO 日志的输出方式:-->
- <appender name="FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!-- 下面为配置只输出error级别的日志 -->
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>INFO</level>
- <OnMismatch>DENY</OnMismatch>
- <OnMatch>ACCEPT</OnMatch>
- </filter>
- <append>true</append>
- <!--日志文件路径,日志文件名称-->
- <File>${LOG_HOME}/${LOG_PREFIX}_info.log</File>
- <!-- 设置滚动策略,当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB -->
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!--日志文件路径,新的 INFO 日志文件名称,“ i ” 是个变量 -->
- <FileNamePattern>${LOG_DIR}/${LOG_PREFIX}_info%i.log</FileNamePattern>
- <!-- 配置日志的滚动时间 ,表示只保留最近 10 天的日志-->
- <MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
- <cleanHistoryOnStart>true</cleanHistoryOnStart>
- <!--当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB-->
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <!-- 输出的日志内容格式化-->
- <encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
- <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- </appender>
- <!-- 定义 ERROR 日志的输出方式:-->
- <appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!-- 下面为配置只输出error级别的日志 -->
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <OnMismatch>DENY</OnMismatch>
- <OnMatch>ACCEPT</OnMatch>
- </filter>
- <!--日志文件路径,日志文件名称-->
- <File>${LOG_HOME}/${LOG_PREFIX}_err.log</File>
- <!-- 设置滚动策略,当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB -->
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <!--日志文件路径,新的 ERR 日志文件名称,“ i ” 是个变量 -->
- <FileNamePattern>${LOG_DIR}/${LOG_PREFIX}_err%i.log</FileNamePattern>
- <!-- 配置日志的滚动时间 ,表示只保留最近 10 天的日志-->
- <MaxHistory>${LOG_MAX_HISTORY}</MaxHistory>
- <cleanHistoryOnStart>true</cleanHistoryOnStart>
- <!--当天的日志大小超过 ${MAX_FILE_SIZE} 文件大小时候,新的内容写入新的文件, 默认10MB-->
- <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
- <maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
- </timeBasedFileNamingAndTriggeringPolicy>
- </rollingPolicy>
- <!-- 输出的日志内容格式化-->
- <encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
- <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
- <charset>utf-8</charset>
- </encoder>
- </appender>
- <!-- additivity 设为false,则logger内容不附加至root ,配置以配置包下的所有类的日志的打印,级别是 ERROR-->
- <logger name="org.springframework" level="ERROR"/>
- <logger name="org.apache.commons" level="ERROR"/>
- <logger name="com.alibaba.dubbo.monitor" level="ERROR"/>
- <logger name="com.alibaba.dubbo.remoting" level="ERROR"/>
- <logger name="com.zaxxer.hikari" level="ERROR"/>
- <logger name="org.apache.http.impl.conn" level="ERROR"/>
- <logger name="com.apache.ibatis" level="${LOG_LEVEL}"/>
- <logger name="java.sql.Connection" level="${LOG_LEVEL}"/>
- <logger name="java.sql.Statement" level="${LOG_LEVEL}"/>
- <logger name="java.sql.PreparedStatement" level="${LOG_LEVEL}"/>
- <logger name="io.lettuce.core.protocol" level="ERROR"/>
- <logger name="io.lettuce.core" level="ERROR"/>
- <!-- ${LOG_ROOT_LEVEL} 日志级别 -->
- <root level="${LOG_ROOT_LEVEL}">
- <!-- 标识这个"${STDOUT}"将会添加到这个logger -->
- <appender-ref ref="${STDOUT}"/>
- <!-- FILE_ALL 日志输出添加到 logger -->
- <appender-ref ref="FILE_ALL"/>
- <!-- FILE_INFO 日志输出添加到 logger -->
- <appender-ref ref="FILE_INFO"/>
- <!-- FILE_ERROR 日志输出添加到 logger -->
- <appender-ref ref="FILE_ERROR"/>
- </root>
- </configuration>
|