<?xml version="1.0" encoding="UTF-8"?> <configuration status="info"> <appenders> <Console name="Console" target="SYSTEM_OUT" follow="true"> <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} %t %-5level %logger{30}.%method - %msg%n"/> </Console> <!--默認按天&按512M文件大小切分日志,默認最多保留30個日志文件,非阻塞模式--> <XMDFile name="infoAppender" fileName="info.log" sizeBasedTriggeringSize="512M" rolloverMax="30"> <Filters> <ThresholdFilter level="warn" onMatch="DENY" onMismatch="NEUTRAL"/> <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/> </Filters> </XMDFile> <XMDFile name="warnAppender" fileName="warn.log" sizeBasedTriggeringSize="512M" rolloverMax="30"> <Filters> <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/> <ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/> </Filters> </XMDFile> <XMDFile name="errorAppender" fileName="error.log" sizeBasedTriggeringSize="512M" rolloverMax="30"> <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> </XMDFile> <!--日志遠程上報--> <Scribe name="ScribeAppender"> <!--遠程日志默認使用appkey作為日志名(app.properties文件中的app.name字段),也可自定義scribeCategory屬性,scribeCategory優先級高於appkey--> <LcLayout/> </Scribe> <Async name="ScribeAsyncAppender" blocking="false"> <AppenderRef ref="ScribeAppender"/> </Async> <!--hive日志遠程上報--> <Scribe name="ScribeHiveAppender"> <!--遠程日志默認使用appkey作為日志名(app.properties文件中的app.name字段),也可自定義scribeCategory屬性,scribeCategory優先級高於appkey--> <Property name="scribeCategory">qcs.regulation.jiaotongbu</Property> <LcLayout/> </Scribe> <Async name="XMDFileAppender" blocking="false"> <AppenderRef ref="ScribeHiveAppender"/> </Async> <CatAppender name="catAppender"/> </appenders> <loggers> <logger name="hive-logger" additivity="false"> <AppenderRef ref="XMDFileAppender"/> <appender-ref ref="ScribeAsyncAppender"/> </logger> <logger name="com.sankuai.qcs.regulation" additivity="false"> <appender-ref ref="ScribeAsyncAppender"/> <appender-ref ref="infoAppender"/> <appender-ref ref="warnAppender"/> <appender-ref ref="errorAppender"/> <appender-ref ref="catAppender"/> </logger> <!--其他日志--> <root level="info"> <appender-ref ref="warnAppender"/> <appender-ref ref="errorAppender"/> <appender-ref ref="Console"/> <appender-ref ref="catAppender"/> </root> </loggers> </configuration>
其中 最后的:
<root level="info"> <appender-ref ref="warnAppender"/> <appender-ref ref="errorAppender"/> <appender-ref ref="Console"/> <appender-ref ref="catAppender"/> </root>
指的是<!-- 設置根日志級別,指定路徑中的日志優先級大於根日志優先級
如果設置了level=info 就是說 根目錄會打印info以上的信息;
參考:Log4J日志信息配置文件詳解