アプリケーションワイドトレソシュースを使用するためのベストプラクティス

StackOverflow https://stackoverflow.com/questions/4867865

  •  28-10-2019
  •  | 
  •  

質問

したがって、アプリケーションのアクティビティ/エラーなどを記録するためにトレースを使用するアプリケーションがあります。ほとんどの情報はログファイルに移動しますが、いくつかのエラーもイベントビューアーでも行われます。このアプリケーションには多くのクラスがあります。
この場合、TracesSourceを使用する最良の方法は何ですか? SingletonをラッピングするTestSourceクラスを作成する必要がありますか、それともそれを行うより良い方法はありますか?

役に立ちましたか?

解決

@valdisにある程度同意します-log4netとnlogは、非常に強力なロギングフレームワークの2つの例であり、非常に柔軟性と比較的使いやすい構成を提供します(nlogはおそらくlog4netよりも構成が簡単です)。しかし、TracesSourceを完全に避けるためにそれが必要ではないと思います。 TracesSourceは組み込まれているため、追加の依存関係を避けます。

TracesSourceを使用している場合、単一のアプリケーション全体の静的TracesSourceオブジェクトが進む方法であるとは思いません。より多くのTracesSourcesを使用することをお勧めします(おそらくクラスごとに1つでも使用することをお勧めします(これはやり過ぎかもしれませんが、log4netとnlogを使用する場合は一般的なパターンです)。

アプリケーションで複数のTracesSourceをいつ使用するかについて、他の質問に対する詳細を詳細に説明しました。

他のヒント

組み込みの.NETイベントとロギングインフラストラクチャを使用することを厳しくしていますか?サードパーティの一部を使用することをお勧めします(Enterprise Libraryからのログなど)。それらはより柔軟で、より構成可能であり、あなたはこのような頭の端を持っていません - あなたはただ書くだけです:

Logger.Write(...)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top