Logger束縛の種類

ログ出力規則の一環でLoggerを生成するときのルールを決めました。実際の開発にはlog4netを使っていますが、どのようなロギングフレームワークにも通用するルールだと思います。

投稿者:sato 投稿日時:

log4net, LoggingAB, NLogを比較してみた

[intlink id=”558″],[intlink id=”555″],[intlink id=”548″]の続き。
log4net, LoggingAB, NLogを比較してみた。

名前 DLLサイズ 速度 評価
log4net 1.2.10 270,336 bytes 70us/行 ハマりどころなし。よくできている。
NLog 1.0 253,952 bytes 67us/行 バッファリング設定しないと遅い。きめ細かい設定ができるともいえる。
LoggingAB Enterprise Library 3.1 379,728 bytes 224us/行 遅い。かゆいところに手が届かない印象。
出力なし 0 bytes 51us/行 最速だがログ出力してない(笑)

まとめ
個人的にはNLogが好きなんだけど、実績とか考えるとlog4net使っとくのが無難だと思う。
LogginABはおすすめできない。

log4netはたぶんユーザ数が最多。
log4j使ってた経験があるなら設定とかすぐわかる。
パフォーマンスも隙が無い。

NLogは2006年からwebサイト更新されてないように見える。
十分枯れてると思うが、ちょっと不安。好意的に見れば、枯れててバージョンアップが不要なのかも??

LoggingABは重過ぎる。自作のリスナーとか作れば改善するかもしれない。
他のEnterprise Library機能と組み合わせるときにはこれしか選択肢なし。
ログ出力機能だけがほしいのであればオーバスペック。
Microsoftやpatterns & practicesが好きなら担いで見るのもよい。
あと、設定が一番ゴチャゴチャしてる。
専用の設定エディタが付属するけど、使い心地が微妙でもどかしい。

(さらに…)

投稿者:sato 投稿日時: