在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級別高的..