<?xml version="1.0" encoding="UTF-8"?>%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${hostName} --- [%15.15t] %-40.40c{1.} : %m%n%ex
<Property name="LOG_PATTERN_OPERATE">
%m%n%ex
</Property>
<Property name="LOG_FILE_PATH">./logs</Property>
</Properties>
<Appenders>
<Console name="ConsoleAppender" target="SYSTEM_OUT" follow="true">
<PatternLayout pattern="${LOG_PATTERN}"/>
</Console>
<!-- Rolling File Appender -->
<RollingFile name="FileAppender" fileName="${LOG_FILE_PATH}/log.log"
filePattern="${LOG_FILE_PATH}/log-%d{yyyy-MM-dd}-%i.log">
<PatternLayout>
<Pattern>${LOG_PATTERN}</Pattern>
</PatternLayout>
<!--<JsonLayout complete="false" compact="true">
<KeyValuePair key="timestamp" value="$${date:yyyy-MM-dd'T'HH:mm:ss.SSSZ}" />
</JsonLayout>-->
<Filters>
<!-- 只记录ERROR级别日志信息,程序打印的其他信息不会被记录 -->
<!-- 此level设置的日志级别,是过滤日志文件中打印出的日志信息,和Root的level有所区别 -->
<ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
</Filters>
<Policies>
<SizeBasedTriggeringPolicy size="500MB"/>
<!-- 每天创建一个日志文件 -->
<TimeBasedTriggeringPolicy interval="1"/>
</Policies>
<DefaultRolloverStrategy max="10">
<Delete basePath="${LOG_FILE_PATH}" maxDepth="1">
<IfFileName glob="log*.log"/>
<IfLastModified age="15d"/>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<!-- WDP客户端操作日志-->
<RollingFile name="operateLog" fileName="${LOG_FILE_PATH}/operate.log"
filePattern="${LOG_FILE_PATH}/operate-%d{yyyy-MM-dd}.log">
<PatternLayout>
<Pattern>${LOG_PATTERN_OPERATE}</Pattern>
</PatternLayout>
<Policies>
<!-- 每天创建一个日志文件 -->
<TimeBasedTriggeringPolicy interval="1"/>
</Policies>
<DefaultRolloverStrategy max="10">
<Delete basePath="${LOG_FILE_PATH}" maxDepth="1">
<IfFileName glob="operate*.log"/>
<IfLastModified age="15d"/>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
<Async name="ASYNC">
<AppenderRef ref="FileAppender"/>
<AppenderRef ref="ConsoleAppender"/>
</Async>
<Async name="ASYNC_OPERATE">
<AppenderRef ref="operateLog"/>
<AppenderRef ref="ConsoleAppender"/>
</Async>
</Appenders>
<Loggers>
<!-- 用来单独指定日志的形式,比如要为指定包下的class指定不同的日志级别等。
additivity指定是否同时输出log到父类的appender,缺省为true -->
<Logger name="wind.wdp.PieManager.service.CalculateAchievementService" level="info" additivity="false">
<AppenderRef ref="ASYNC_OPERATE"/>
</Logger>
<!-- AsyncRoot - 异步记录日志 - 需要LMAXDisruptor的支持 -->
<!-- <AsyncRootlevel="info" additivity="false">
<AppenderRef ref="Console"/>
<AppenderRef ref="FileAppender"/>
</AsyncRoot> -->
<!-- All < Trace < Debug < Info < Warn < Error < Fatal < OFF. -->
<!-- 程序会打印高于或等于所设置级别的日志,设置的日志等级越高,打印出来的日志就越少。-->
<!-- 此level设置的日志级别,是过滤项目中输出的日志信息,和ThresholdFilter的level有所区别 -->
<Root level="INFO">
<AppenderRef ref="ASYNC"/>
</Root>
</Loggers>
本文标题:拿来即用的log4j2日志配置文件
本文链接:https://blog.quwenai.cn/post/9518.html
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。






还没有评论,来说两句吧...