« JDKインストール後のゴニョゴニョ・・・ | Main | Chemical Brothers! »

13 January 2005

log4net

Javaでログ出力といえば、log4j。apache logging

.NETでログ出力というと、何でしょうね。探さなくても、apacheにありました。log4netです。使用感はlog4jと同じ。Javaと.NETは似ていますからね。

私としてはlog4net、かなりおすすめです。特に~.exe.config(Javaにおけるpropertiesファイルと同じ扱い)に諸設定を記述します。configファイルは、xml形式なので、意味が明確で扱いやすいなぁと思っています。
たとえばlog4jの場合、次のような感じでルートを指定します。


log4j.rootLogger=DEBUG, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender

log4netの場合、次のようになります。

<root>
<priority value="DEBUG" />
<appender-ref ref="ConsoleAppender" />
</root>

propertiesファイルはWindowsのiniファイルと似ているので、階層構造にするためには色々とやらねばならない。そこでlog4jでは変数、上記の例で言うとA1、を割り当てて、それを使いまわすことで階層的な構成にしていますが、XMLなら容易いし、可視性が向上しています。この点以外は基本的にはlog4jもlog4netも代わりありません。なので、Javaデベロッパが.NETを扱う場合には使ってみるとよいのではないでしょうか。日立ソフトのサイトでXMLで設定できるという記述を発見しました。なんだ私が知らなかっただけなんじゃん・・・orz

それからポイントとして、VS.NETなどでコンパイルするとconfigファイルは削除されてしまいます。そのためビルド後のイベントで、

copy configファイルの在処 $(TargetDir)
とか設定しておくと、結構重宝しますね。

TrackBack

TrackBack URL for this entry:
http://bb.lekumo.jp/t/trackback/517129/31023913

Listed below are links to weblogs that reference log4net:

Comments

Post a comment

Access Ranking

Powered by Six Apart
Sponsored links