log4j.rootCategory=DEBUG,FILE,NT # デバッグログファイルの設定 log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.Threshold=DEBUG log4j.appender.FILE.File=debug.log log4j.appender.FILE.Append=true log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%d %c %m%n # INFO以上のログのNTイベントログの設定 log4j.appender.NT=org.apache.log4j.nt.NTEventLogAppender log4j.appender.NT.Threshold=INFO log4j.appender.NT.layout=org.apache.log4j.PatternLayout log4j.appender.NT.layout.ConversionPattern=%c %m%n |
<?xml version="1.0" encoding="Shift_JIS" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
<!-- INFO以上のログのNTイベントログの設定 -->
<appender name="NT" class="org.apache.log4j.nt.NTEventLogAppender">
<param name="Threshold" value="INFO" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %m%n"/>
</layout>
</appender>
<!-- デバッグログファイルの設定 -->
<appender name="DEBUG" class="org.apache.log4j.FileAppender">
<param name="Append" value="true" />
<param name="File" value="debug.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %c %m%n"/>
</layout>
<filter class="org.apache.log4j.varia.PriorityMatchFilter">
<param name="PriorityToMatch" value="DEBUG" />
<param name="AcceptOnMatch" value="true" />
</filter>
</appender>
<root>
<appender-ref ref="NT" />
<appender-ref ref="DEBUG" />
</root>
</log4j:configuration>
|
ちなみに、ソースの初期化部分は、以下のような感じ。
※ URL を使用しているのは、WEBアプリで使いやすくするため。下記の設定で、CLASSPATH直下のlog.xmlを読み込む。
URL url = Log.class.getResource("/log.xml");
DOMConfigurator.configure(url);
// PropertiesConfigurator.configure(url);
|
<appender name="NT" class="org.apache.log4j.nt.NTEventLogAppender">
<param name="Threshold" value="INFO" />
<param name="Source" value="ほげほげシステム" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %m%n"/>
</layout>
</appender>
|
※ イベントビューアには、他に「分類」と「イベントID」が出る。ここをうまく意味のある文字列にすることはできないか?
<root>
<priority value="INFO" />
<appender-ref ref="NT" />
<appender-ref ref="DEBUG" />
</root>
|