log4j xml 配置方式研究log4j 的xml配置文件,花了我将近一天的时间,真是郁闷。公司还很热,头疼死了。不过终
log4j xml 配置方式
研究log4j 的xml配置文件,花了我将近一天的时间,真是郁闷。公司还很热,头疼死了。不过终于搞明白了 其实也很简单
log4j在初始化的时候 会先在classpath中寻找 log4j.porperties,当找不到该文件时,会接着寻找log4j.xml
研究了一下xml配置文件的书写方式,提供一个样例,具体的可以参考 log4j.dtd
通过<logger></logger>的定义可以将各个包中的类日志输出到不同的日志文件中
?以下是完整的log4j.xml?
java 代码
- <?xml?version="1.0"?encoding="UTF-8"?> ??
- <!DOCTYPE?log4j:configuration?SYSTEM?"log4j.dtd"> ??
- ??
- ????<log4j:configuration?xmlns:log4j='http://jakarta.apache.org/log4j/'?> ??
- ????????<appender?name="STDOUT"?class="org.apache.log4j.ConsoleAppender"> ??
- ????????????<layout?class="org.apache.log4j.PatternLayout"> ??
- ????????????????<param?name="ConversionPattern"??
- ????????????????????value="[%d{dd?HH:mm:ss,SSS\}?%-5p]?[%t]?%c{2\}?-?%m%n"?/> ??
- ????????????</layout> ??
- ????????</appender> ??
- ? ??
- ????????<appender?name="activex_appender"?class="org.apache.log4j.DailyRollingFileAppender"> ??
- ????????????<param?name="File"?value="E:/activex.log"?/> ??
- ????????????<param?name="DatePattern"?value="'.'yyyy-MM-dd'.log'"?/> ??
- ????????????<layout?class="org.apache.log4j.PatternLayout"> ??
- ????????????????<param?name="ConversionPattern"?value="[%d{MMdd?HH:mm:ss?SSS\}?%-5p]?[%t]?%c{3\}?-?%m%n"?/> ??
- ????????????</layout> ??
- ????????</appender> ??
- ???????? ??
- ????????<logger?name="com.runway.bssp.activeXdemo"?additivity="false"> ??
- ????????????<level?value="debug"?/> ??
- ????????????<appender-ref?ref="activex_appender"?/> ??
- ????????</logger> ??
- ????????<root> ??
- ????????????<appender-ref?ref="STDOUT"/> ??
- ????????</root> ??
- ????</log4j:configuration> ??
- ??
1 楼 YuLimin 2007-05-30 <p>这是完全错误的理解,是不是在想当然?</p>
<p>怎么会说成“会先在classpath中寻找 log4j.porperties,当找不到该文件时,会接着寻找log4j.xml ”???</p>
<p>恰恰相反,默认是先找log4j.xml,找不到log4j.xml再去找log4j.properties的。当然前提是你没有自己定义<font>log4j.configuration</font></p>
<p><br/>
<strong>sun_cat 写道:</strong><br/>
</p>
<div class='quote_div'>
<p>研究log4j 的xml配置文件,花了我将近一天的时间,真是郁闷。公司还很热,头疼死了。不过终于搞明白了 其实也很简单</p>
<p><font color='#ff0000'>log4j在初始化的时候 会先在classpath中寻找 log4j.porperties,当找不到该文件时,会接着寻找log4j.xml</font></p>
</div> 2 楼 zhangfengsimon 2007-06-07 YuLimin 写道<p>这是完全错误的理解,是不是在想当然?</p>
<p>怎么会说成“会先在classpath中寻找 log4j.porperties,当找不到该文件时,会接着寻找log4j.xml ”???</p>
<p>恰恰相反,默认是先找log4j.xml,找不到log4j.xml再去找log4j.properties的。当然前提是你没有自己定义<font face="Arial">log4j.configuration</font></p>
<p><br />
<strong>sun_cat 写道:</strong><br />
</p>
<div class="quote_div">
<p>研究log4j 的xml配置文件,花了我将近一天的时间,真是郁闷。公司还很热,头疼死了。不过终于搞明白了 其实也很简单</p>
<p><font color="#ff0000">log4j在初始化的时候 会先在classpath中寻找 log4j.porperties,当找不到该文件时,会接着寻找log4j.xml</font></p>
</div>