123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration status="OFF">
- <properties>
- <property name="LOG_HOME">/data/logs/dxtop</property>
- <Property name="CONSOLE_LOG_PATTERN">%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{blue} %clr{%-5level}
- %clr{${sys:PID}}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%l}{cyan} %clr{:}{faint} %m%n%xwEx
- </Property>
- </properties>
- <appenders>
- <!-- 日志级别:ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF -->
- <Console name="Console" target="SYSTEM_OUT">
- <!--只接受程序中INFO级别的日志进行处理-->
- <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
- <PatternLayout pattern="${CONSOLE_LOG_PATTERN}"/>
- </Console>
- <!--处理INFO级别的日志,并把该日志放到logs/info.log文件中-->
- <RollingFile name="RollingFileInfo" fileName="${LOG_HOME}/info.log"
- filePattern="${LOG_HOME}/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log.gz">
- <Filters>
- <!--只接受INFO级别的日志,其余的全部拒绝处理-->
- <LevelRangeFilter maxLevel="INFO" minLevel="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>
- </Filters>
- <PatternLayout
- pattern="[%d{yyyy-MM-dd HH:mm:ss}] %-5level %class{36} %L %M - %msg%xEx%n"/>
- <Policies>
- <SizeBasedTriggeringPolicy size="200 MB"/>
- <TimeBasedTriggeringPolicy interval="1"/>
- </Policies>
- <DefaultRolloverStrategy max="30">
- <Delete basePath="${LOG_HOME}/$${date:yyyy-MM}/" maxDepth="2">
- <IfFileName glob="*.log.gz"/>
- <!-- 这里的age必须和filePattern协调, 后者是精确到HH, 这里就要写成xH, xd就不起作用
- 另外, 数字最好>2, 否则可能造成删除的时候, 最近的文件还处于被占用状态,导致删除不成功!-->
- <!--30天-->
- <IfLastModified age="30d"/>
- </Delete>
- </DefaultRolloverStrategy>
- </RollingFile>
- <!--处理WARN级别的日志,并把该日志放到logs/warn.log文件中-->
- <RollingFile name="RollingFileWarn" fileName="${LOG_HOME}/warn.log"
- filePattern="${LOG_HOME}/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log.gz">
- <Filters>
- <ThresholdFilter level="WARN"/>
- <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/>
- </Filters>
- <PatternLayout
- pattern="[%d{yyyy-MM-dd HH:mm:ss}] %-5level %class{36} %L %M - %msg%xEx%n"/>
- <Policies>
- <SizeBasedTriggeringPolicy size="200 MB"/>
- <TimeBasedTriggeringPolicy interval="1"/>
- </Policies>
- <DefaultRolloverStrategy max="30">
- <Delete basePath="${LOG_HOME}/$${date:yyyy-MM}/" maxDepth="2">
- <IfFileName glob="*.log.gz"/>
- <!-- 这里的age必须和filePattern协调, 后者是精确到HH, 这里就要写成xH, xd就不起作用
- 另外, 数字最好>2, 否则可能造成删除的时候, 最近的文件还处于被占用状态,导致删除不成功!-->
- <!--30天-->
- <IfLastModified age="30d"/>
- </Delete>
- </DefaultRolloverStrategy>
- </RollingFile>
- <!--处理error级别的日志,并把该日志放到logs/error.log文件中-->
- <RollingFile name="RollingFileError" fileName="${LOG_HOME}/error.log"
- filePattern="${LOG_HOME}/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log.gz">
- <ThresholdFilter level="ERROR"/>
- <PatternLayout
- pattern="[%d{yyyy-MM-dd HH:mm:ss}] %-5level %class{36} %L %M - %msg%xEx%n"/>
- <Policies>
- <SizeBasedTriggeringPolicy size="200 MB"/>
- <TimeBasedTriggeringPolicy interval="1"/>
- </Policies>
- <DefaultRolloverStrategy max="30">
- <Delete basePath="${LOG_HOME}/$${date:yyyy-MM}/" maxDepth="2">
- <IfFileName glob="*.log.gz"/>
- <!-- 这里的age必须和filePattern协调, 后者是精确到HH, 这里就要写成xH, xd就不起作用
- 另外, 数字最好>2, 否则可能造成删除的时候, 最近的文件还处于被占用状态,导致删除不成功!-->
- <!--30天-->
- <IfLastModified age="30d"/>
- </Delete>
- </DefaultRolloverStrategy>
- </RollingFile>
- <!--sql的日志记录追加器-->
- <RollingFile name="druidSqlRollingFile" fileName="${LOG_HOME}/sql.log"
- filePattern="${LOG_HOME}/$${date:yyyy-MM}/sql-%d{yyyy-MM-dd}-%i.log.gz">
- <PatternLayout pattern="[%d{yyyy-MM-dd HH:mm:ss}] %-5level %L %M - %msg%xEx%n"/>
- <Policies>
- <SizeBasedTriggeringPolicy size="200 MB"/>
- <TimeBasedTriggeringPolicy interval="1"/>
- </Policies>
- <DefaultRolloverStrategy max="30">
- <Delete basePath="${LOG_HOME}/$${date:yyyy-MM}/" maxDepth="2">
- <IfFileName glob="*.log.gz"/>
- <!-- 这里的age必须和filePattern协调, 后者是精确到HH, 这里就要写成xH, xd就不起作用
- 另外, 数字最好>2, 否则可能造成删除的时候, 最近的文件还处于被占用状态,导致删除不成功!-->
- <!--30天-->
- <IfLastModified age="30d"/>
- </Delete>
- </DefaultRolloverStrategy>
- </RollingFile>
- </appenders>
- <loggers>
- <root level="INFO">
- <appender-ref ref="Console"/>
- <appender-ref ref="RollingFileInfo"/>
- <appender-ref ref="RollingFileWarn"/>
- <appender-ref ref="RollingFileError"/>
- </root>
- <!--记录druid-sql的记录-->
- <logger name="druid.sql.Statement" level="INFO" additivity="false">
- <appender-ref ref="druidSqlRollingFile"/>
- </logger>
- <!--log4j2 自带过滤日志-->
- <Logger name="org.apache.catalina.util.LifecycleBase" level="error"/>
- <Logger name="org.apache.coyote.http11.Http11NioProtocol" level="warn"/>
- <Logger name="org.apache.tomcat.util.net.NioSelectorPool" level="warn"/>
- <Logger name="org.eclipse.jetty.util.component.AbstractLifeCycle" level="error"/>
- <Logger name="org.hibernate.validator.internal.util.Version" level="warn"/>
- <logger name="org.springframework.boot.actuate.endpoint.jmx" level="warn"/>
- <logger name="org.thymeleaf" level="warn"/>
- </loggers>
- </configuration>
|