通常在log4j.xml會有如下的配置:

<root>
    <level value="INFO" />
    <appender-ref ref="stdout" />
</root>

  影響所及,任何一個class只要是log到INFO等級以上的,都會被<root>帶到stdout這個appender去寫出,通常是console。Console的IO也是會影響效能。若希望自己的<logger>不為<root>所影響,則可在log4j.xml做如下設定,將additivity設為false:

<logger name="com.mycompany" additivity="false">
    <level value="INFO" />
    <appender-ref ref="dynadailyrolling" />
</logger>

  若是由程式產出logger物件,要避免<root>影響,可增加以下這行:

org.apache.log4j.Logger log
    = org.apache.log4j.Logger.getLogger(name);
log.setAdditivity(false);

arrow
arrow
    全站熱搜

    Jemmy 發表在 痞客邦 留言(0) 人氣()