log4j 1.2.14のことはじめ

感想おまちしてます!

http://logging.apache.org/

パフォーマンス

isTraceEnabled()をしないとパフォーマンス落ちる。
「logger.debug(“aaa” + “aaaa”)」みたいに文字連結するばあいはこのif文をいれるとよい。でもめんどくさいのでLoggerをラッピングしてLogger内で実装した場合は効果がなくなる。

カテゴリ

カテゴリ名はパッケージ名を利用したほうがいいみたい。そうすればログを出さないクラスとかをきめることができるし。

log4j.xml

log4jの設定ファイルとしてlog4j.xmlを使える。名前は何でもいいみたい。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration>

<appender name="Console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss}[%p]%m%n"/>
</layout>
</appender>

<root>
<priority value ="trace" />
<appender-ref ref="Console"/>
</root>

</log4j:configuration>

以下のようにして設定ファイルを読み込ませることができる。

DOMConfigurator.configure("c:/temp/log4j.xml");

上記を実行しない場合は、classpathにあるlog4j.xmlを探すらしい。