当前位置: 代码迷 >> Java相关 >> log4j日志优先级招致的不输出日志
  详细解决方案

log4j日志优先级招致的不输出日志

热度:58   发布时间:2016-04-22 20:41:59.0
log4j日志优先级导致的不输出日志

在sae部署微信代码的时候,发现它的默认日志很不友好,看起来很费劲,详细看了一下说明发现它可以根据log4j的输出级别而分类输出,就拖了一个log4j的xml文件扔进项目代码,然后部署运行,发现没有日志输出..怪了,本地部署也没日志输出,看了下日志配置:

<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">    <layout class="org.apache.log4j.PatternLayout">        <param name="ConversionPattern" value="%d %-5p - [%C{1}] %m%n"/>    </layout></appender><root>    <level value="warn"/>    <appender-ref ref="STDOUT"/></root>

貌似没问题,指定的控制台输出,怎么没日志输出呢,难道配置文件有误?开启log4j的调试模式,在eclipse中的run configuration中添加如下参数:

再次运行,无任何问题..无奈,本地将日志的info,warn,error,debug都输出一句,发现只有error和warn输出,看来是日志级别设置的问题,看了一下原日志的级别是warn:

<root>    <level value="WARN"/>    <appender-ref ref="STDOUT"/></root>

 

居然是warn..难怪没有日志..

日志记录的优先级由分为 :
OFF ,FATAL ,ERROR ,WARN ,INFO, DEBUG, ALL。
Log4j建议只使用FATAL ,ERROR ,WARN ,INFO ,DEBUG这五个级别。

由于我们设置的是warn,所以只能输出warn和比warn级别高的..