12

アプリケーションにロギング フレームワークが必要です。Log4Net と Logging from Application Block の 2 つの候補があります。どちらが良いですか?それらのいずれかに特定の利点はありますか?

ありがとう

4

5 に答える 5

18

Log4Net の方がセットアップと使用が簡単であることがわかりました。Enterprise Library アプリケーション ブロックの問題は、それらがすべてとキッチン シンクを含む傾向があり、一見単純なもの (ログ記録など) が非常に複雑なものになる可能性があることです。また、Log4Net は私も使用している nHibernate で使用されているため、すでに準備が整っています。

于 2008-11-04T21:30:28.450 に答える
10

他の機能に Enterprise Library を既に使用していない限り、log4net を使用します。Enterprise Library は少し重く、実際にログを記録するにはもう少しコードが必要です。

log4net には次の利点があります。

  • 高速で柔軟
  • 階層型の名前付きロギング カテゴリ
  • 複数のログ レベル
  • 複数のロギング ターゲットへの出力
  • 動的 XML 構成
  • スレッドセーフ
  • ログのフォーマットは簡単に変更できます
  • 実証済みのアーキテクチャ (log4j)
  • モジュール式で拡張可能な設計
  • 複数のフレームワークのサポート
  • その背後にある強力なコミュニティ。

私は数年前から log4net を使用していますが、箱から出してすぐに何かをする必要があるときはいつでも、それがいかに簡単であるかに驚いています。

于 2008-11-04T21:44:25.393 に答える
7

私の意見... Log4Netは機能し、パフォーマンスが高く、安定しています(私の言いたいことがわかっている場合は、リリースの頻度を考えると安定しすぎている可能性があります)。

ログが必要な場合、Enterprise Library によって公開されている他の機能が必要ない可能性はほとんどありません。Microsoft のロード マップ上にあり、定期的な更新の恩恵を受け、ツール サポート (構成ツールなど) があり、常に多くの機能があります。オープンソースで得られるよりもはるかに優れた悪質なドキュメント。

好みははっきりしていると思います!ずっとエンタープライズ ライブラリ。

于 2008-11-04T21:34:47.677 に答える
3

Log 4 net はすばらしい機能です。優れた機能ですが、特にデフォルトの出力では不十分で拡張する必要がある場合は、構成を習得するのにある程度の時間と労力がかかります。

Enterprise Library は非常に重く、どこに行くのかわかりません (特に DAB では、リリース間で重大な変更がいくつかあります)。なので、個人的には避けています。

私は現在nLogを見ています(それについていくつかの非常に良いことを聞きました)

更新: 私は現在 nlog が大好きです。特に言及したいことの 1 つは、コード内からログレベルを簡単に構成できることです。使用例: - ユーザーがバグに遭遇した場合 - ログレベルをトレース (メニュー オプション) に設定し、同じ手順を実行するよう依頼します - ログファイルをメールで送信するよう依頼します。(別のメニューオプション)

于 2008-11-04T22:59:30.907 に答える
1

log4netコンソールアプリの簡単な例 ベローは設定ファイルも

于 2009-04-20T19:26:17.760 に答える