log4j2不打印日志Log4j2的⽇志配置⽂件,l⽂件的配置(实现控制台输出,各级别分别
⽂件。。。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "/2002/xmlspec/dtd/2.10/xmlspec.dtd">
<!-- status : 这个⽤于设置log4j2⾃⾝内部的信息输出,可以不设置,当设置成trace时,会看到log4j2内部各种详细输出 monitorInterval
: Log4j能够⾃动检测修改配置⽂件和重新配置本⾝, 设置间隔秒数。注:本配置⽂件的⽬标是将不同级别的⽇志输出到不同⽂件,最⼤2MB⼀个⽂件,
⽂件数据达到最⼤值时,旧数据会被压缩并放进指定⽂件夹 -->
<Configuration status="WARN" monitorInterval="600">
<Properties><!-- 配置⽇志⽂件输出⽬录,此配置将⽇志输出到tomcat根⽬录下的指定⽂件夹 -->
<Property name="LOG_HOME">${sys:catalina.home}/WebAppLogs/HHServices
</Property>
</Properties>
<Appenders>
<!-- 优先级从⾼到低分别是 OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL -->
<!-- 单词解释: Match:匹配 DENY:拒绝 Mismatch:不匹配 ACCEPT:接受 -->
<!-- DENY,⽇志将⽴即被抛弃不再经过其他过滤器; NEUTRAL,有序列表⾥的下个过滤器过接着处理⽇志; ACCEPT,⽇志会被⽴即处理,不再经过剩余过滤器。 -->
<!--输出⽇志的格式
%d{yyyy-MM-dd HH:mm:ss, SSS} : ⽇志⽣产时间
%p : ⽇志输出格式
%c : logger的名称
%m : ⽇志内容,即 logger.info("message")
%n : 换⾏符
%C : Java类名
%L : ⽇志输出所在⾏数
%M : ⽇志输出所在⽅法名
hostName : 本地机器名
hostAddress : 本地ip地址 -->
<!--这个输出控制台的配置,这⾥输出除了warn和error级别的信息到System.out -->
<Console name="console_out_appender" target="SYSTEM_OUT">
<!-- 控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch) . -->
<ThresholdFilter level="DEBUG" onMatch="ACCEPT"
onMismatch="DENY"/>
<!-- 输出⽇志的格式 -->
<PatternLayout pattern="%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n"/>
</Console>
<!-- 这个输出控制台的配置,这⾥输出error级别的信息到,在eclipse控制台上看到的是红⾊⽂字 -->
<Console name="console_err_appender" target="SYSTEM_ERR">
<ThresholdFilter level="ERROR" onMatch="ACCEPT"
onMismatch="DENY"/>
<PatternLayout pattern="%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n"/>
</Console>
<!-- TRACE级别⽇志 ; 设置⽇志格式并配置⽇志压缩格式,压缩⽂件独⽴放在⼀个⽂件夹内,⽇期格式不能为冒号,否则⽆法⽣成,因为⽂件名不允许有冒号,此appender只输出trace级别的数据到trace.log --> <RollingFile name="trace_appender" immediateFlush="true"
fileName="${LOG_HOME}/trace.log" filePattern="${LOG_HOME}/trace/trace - %d{yyyy-MM-dd HH_mm_ss}.">
<PatternLayout>
<pattern>%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n</pattern>
</PatternLayout>
<Policies>
<!-- 每个⽇志⽂件最⼤2MB -->
<SizeBasedTriggeringPolicy size="2MB"/>
</Policies>
<Filters>
<!-- 此Filter意思是,只输出TRACE级别的数据 DENY,⽇志将⽴即被抛弃不再经过其他过滤器; NEUTRAL,有序列表⾥的下个过滤器过接着处理⽇志;
ACCEPT,⽇志会被⽴即处理,不再经过剩余过滤器。 -->
<ThresholdFilter level="debug" onMatch="DENY"
onMismatch="NEUTRAL"/>
<ThresholdFilter level="trace" onMatch="ACCEPT"
onMismatch="DENY"/>
</Filters>
</RollingFile>
<!-- DEBUG级别⽇志设置⽇志格式并配置⽇志压缩格式,压缩⽂件独⽴放在⼀个⽂件夹内,⽇期格式不能为冒号,否则⽆法⽣成,因为⽂件名不允许有冒号,此appender只输出debug级别的数据到debug.log;
--> <RollingFile name="debug_appender" immediateFlush="true"
fileName="${LOG_HOME}/debug.log" filePattern="${LOG_HOME}/debug/debug - %d{yyyy-MM-dd HH_mm_ss}.">
<PatternLayout>
<pattern>%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n</pattern>
</PatternLayout>
<Policies><!-- 每个⽇志⽂件最⼤2MB ; -->
<SizeBasedTriggeringPolicy size="2MB"/>
<!-- 如果启⽤此配置,则⽇志会按⽂件名⽣成新压缩⽂件,即如果filePattern配置的⽇期格式为 %d{yyyy-MM-dd HH}
,则每⼩时⽣成⼀个压缩⽂件,如果filePattern配置的⽇期格式为 %d{yyyy-MM-dd} ,则天⽣成⼀个压缩⽂件 -->
<TimeBasedTriggeringPolicy interval="1"
modulate="true"/>
</Policies>
<Filters><!-- 此Filter意思是,只输出debug级别的数据 -->
<ThresholdFilter level="info" onMatch="DENY"
onMismatch="NEUTRAL"/>
<ThresholdFilter level="debug" onMatch="ACCEPT"
onMismatch="DENY"/>
</Filters>
</RollingFile>
<!-- INFO级别⽇志 -->
<RollingFile name="info_appender" immediateFlush="true"
fileName="${LOG_HOME}/info.log" filePattern="${LOG_HOME}/info/info - %d{yyyy-MM-dd HH_mm_ss}.">
<PatternLayout>
<pattern>%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n</pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="2MB"/>
</Policies>
<Filters>
<ThresholdFilter level="warn" onMatch="DENY"
onMismatch="NEUTRAL"/>
<ThresholdFilter level="info" onMatch="ACCEPT"
onMismatch="DENY"/>
</Filters>
</RollingFile>
<!-- WARN级别⽇志 -->
<RollingFile name="warn_appender" immediateFlush="true"
fileName="${LOG_HOME}/warn.log" filePattern="${LOG_HOME}/warn/warn - %d{yyyy-MM-dd HH_mm_ss}."> <PatternLayout>
<pattern>%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n</pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="2MB"/>
</Policies>
<Filters>
<ThresholdFilter level="error" onMatch="DENY"
onMismatch="NEUTRAL"/>
<ThresholdFilter level="warn" onMatch="ACCEPT"
onMismatch="DENY"/>
</Filters>
</RollingFile>
<!-- ERROR级别⽇志 -->
<RollingFile name="error_appender" immediateFlush="true"
fileName="${LOG_HOME}/error.log" filePattern="${LOG_HOME}/error/error - %d{yyyy-MM-dd HH_mm_ss}."> <PatternLayout>
<pattern>%5p [%t] %d{yyyy-MM-dd HH:mm:ss} (%F:%L) %m%n</pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="2MB"/>
</Policies>
<Filters>
<ThresholdFilter level="error" onMatch="ACCEPT"
onMismatch="DENY"/>
</Filters>
</RollingFile>
</Appenders>
<Loggers>
<!-- 配置⽇志的根节点 -->
<!-- 定义logger,只有定义了logger并引⼊了appender,appender才会⽣效 -->
<root level="trace">
<appender-ref ref="console_out_appender"/>
<appender-ref ref="console_err_appender"/>
<appender-ref ref="trace_appender"/>
<appender-ref ref="debug_appender"/>
<appender-ref ref="info_appender"/>
<appender-ref ref="warn_appender"/>
<appender-ref ref="error_appender"/>
</root>
<!-- 第三⽅⽇志系统 -->
<logger name="" level="info"/>
<logger name="org.springframework.beans" level="info"/>
<logger name="t" level="info"/>
<logger name="org.springframework.web" level="info"/>
<logger name="org.jbossty" level="warn"/>
<logger name="org.apache.http" level="warn"/>
</Loggers>
</Configuration>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。