log4net 1.2.10でのヘッダ・フッタの改行出力
log4netという、.NET Framework用のログ生成ツールがありまして。
もともとはJava版のlog4jを.NETに移植したツールですが、普通にログファイルにはき出すだけでなく、異常時にメール送信したり、UDPで通信したり、データベースに書き込んだり出来る、多機能なツールなのですよ。
で、今やっているC#開発案件にこいつを使おうとしているわけで、いろいろと試しているんです。
ログの区切りとして、アプリの起動時と終了時にヘッダ・フッタとして文字列を出力することができます。
ただ最近のバージョンでは、ヘッダ・フッタとして出力することの出来る文字列に改行コードの\r\nが使えなくなっているんですよ。
そのかわりに、
・XMLでの数値参照を使う。→
<header value="[Header] " />
・書式:type="log4net.Util.PatternString"を指定。
<header type="log4net.Util.PatternString" value="[Header]%newline" />
のやり方が。後者のやり方の方が、開始・終了日時を入れられるので、おすすめですね。
参考:
log4netのヘッダ、フッタ
開発リソース/.Net/log4netの使い方 ヘッダ・フッタに改行を入れる
Ussy Diary(2005-10-10)
Googleで検索かけて見つかるサンプル、古いバージョンのlog4netのものだったりするので、ヘッダ・フッタでの改行はそのまま\r\nを書いているんですよね、これが。
そのとおりにApp.configにて設定しても、ログファイルに文字として\r\nがそのまま出力されて、「何かミスったか」とへこんでいたところ、log4net FAQ - How do I insert newlines into the layout header?に解決が。んでいろいろと検索かけたら、上記の参考に上げているところが見つかったわけです。
Stable Releasesとして1.2.10がダウンロードできることもあり、この手のはまりが他にも出てきそうなので、ここにあげておきます。
| 固定リンク
「パソコン・インターネット」カテゴリの記事
- Apple Store、作業中(2010.02.09)
- Google Chrome 5.0.317.2(dev)(2010.02.06)
- ATOK Syncツール(2010.02.05)
- ATOK 2010(2010.02.05)
- VMware Workstation 7.0.1(2010.02.01)


コメント