1、控制台
<configuration status="error" monitorInterval="10"> <properties> <property name="LOG_HOME">logs</property> <property name="PATTERN_LAYOUT_CONSOLE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %highlight{[%-5level]} [%c{1.}.%M(%F:%L)] --- %highlight{%msg %xEx%n}</property> <property name="PATTERN_LAYOUT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] --- %msg %xEx%n</property> </properties> <appenders> <Console name="Console" target="SYSTEM_OUT"> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout charset="utf-8"> <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_CONSOLE_ROOT}"> <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/> </MarkerPatternSelector> </PatternLayout> </Console> </appenders> <loggers> <!-- 默认显示方式 --> <root level="INFO"> <appender-ref ref="Console"/> </root> <Logger name="com.lms.http" level="DEBUG" additivity="false"> <!--生产环境将控制台去掉--> <appender-ref ref="Console"/> </Logger> </loggers></configuration>
2、文件
<configuration status="error" monitorInterval="10"> <properties> <property name="LOG_HOME">logs</property> <property name="INFO_FILE_NAME">info.log</property> <property name="ERROR_FILE_NAME">error.log</property> <property name="PATTERN_LAYOUT_CONSOLE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %highlight{[%-5level]} [%c{1.}.%M(%F:%L)] --- %highlight{%msg %xEx%n}</property> <property name="PATTERN_LAYOUT_FILE_ROOT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%5p] [%t] [%l] --- %m%n</property> <property name="PATTERN_LAYOUT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] --- %msg %xEx%n</property> </properties> <appenders> <Console name="Console" target="SYSTEM_OUT"> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout charset="utf-8"> <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_CONSOLE_ROOT}"> <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/> </MarkerPatternSelector> </PatternLayout> </Console> <RollingFile name="ROLLING_FILE_INFO" fileName="${LOG_HOME}/${INFO_FILE_NAME}" filePattern="${LOG_HOME}/${INFO_FILE_NAME}-%d{yyyy-MM-dd}-%i.log.gz" bufferSize="4096" immediateFlush="true" bufferedIO="true" append="false"> <Filters> <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="NEUTRAL"/> </Filters> <PatternLayout charset="utf-8"> <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_FILE_ROOT}"> <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/> </MarkerPatternSelector> </PatternLayout> <Policies> <!--<CronTriggeringPolicy schedule="0 0 0/12 * * ?"/>--> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="10MB"/> </Policies> <DefaultRolloverStrategy max="5"> <Delete basePath="${LOG_HOME}" testMode="false" maxDepth="5"> <IfFileName glob="${INFO_FILE_NAME}*.log.gz"> <IfLastModified age="30d"> <IfAny> <IfAccumulatedFileSize exceeds="5GB"/> <IfAccumulatedFileCount exceeds="10"/> </IfAny> </IfLastModified> </IfFileName> <IfAccumulatedFileCount exceeds="10"/> <IfAccumulatedFileSize exceeds="5GB"/> </Delete> </DefaultRolloverStrategy> </RollingFile> <RollingFile name="ROLLING_FILE_ERROR" fileName="${LOG_HOME}/${ERROR_FILE_NAME}" filePattern="${LOG_HOME}/${ERROR_FILE_NAME}-%d{yyyy-MM-dd}-%i.log.gz" bufferSize="4096" immediateFlush="true" bufferedIO="true" append="false"> <Filters> <ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/> </Filters> <PatternLayout charset="utf-8"> <MarkerPatternSelector defaultPattern="${PATTERN_LAYOUT_FILE_ROOT}"> <PatternMatch key="UTIL" pattern="${PATTERN_LAYOUT}"/> </MarkerPatternSelector> </PatternLayout> <Policies> <!--<CronTriggeringPolicy schedule="0 0 0/12 * * ?"/>--> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="10MB"/> </Policies> <DefaultRolloverStrategy max="5"> <Delete basePath="${LOG_HOME}" testMode="false" maxDepth="5"> <IfFileName glob="${ERROR_FILE_NAME}*.log.gz"> <IfLastModified age="30d"> <IfAny> <IfAccumulatedFileSize exceeds="5GB"/> <IfAccumulatedFileCount exceeds="10"/> </IfAny> </IfLastModified> </IfFileName> <IfAccumulatedFileCount exceeds="10"/> <IfAccumulatedFileSize exceeds="5GB"/> </Delete> </DefaultRolloverStrategy> </RollingFile> </appenders> <loggers> <!-- 默认显示方式 --> <root level="INFO"> <appender-ref ref="Console"/> <appender-ref ref="RollingFileINFO"/> <appender-ref ref="ROLLING_FILE_ERROR"/> </root> <Logger name="com.lms.swing" level="INFO" additivity="false"> <!--生产环境将控制台去掉--> <appender-ref ref="Console"/> <appender-ref ref="ROLLING_FILE_INFO"/> <appender-ref ref="ROLLING_FILE_ERROR"/> </Logger> </loggers></configuration>