私は、SharePointに基づいた多くの不十分に記述されたコードを含むプロジェクトを割り当てられました。
これは約15のサブプロジェクトで構成されており、そのうちのいくつかはWindowsサービス、いくつかのWebサービス、SharePoint内で実行されるいくつかのWebアプリケーション、いくつかはWebパーツ、さらにはコンソールアプリケーションです。それらはすべて同じサーバー上で実行され、相互に呼び出します。
本番環境にはすでに多くの問題がありますが、追跡するのは困難です。
元の開発者は、すべての例外をキャッチするための彼のたゆまぬ努力から判断して、サリンジャーまたはポケモンシリーズのいずれかのファンであったに違いありません。残念ながら、それらのいずれも報告またはログに記録されません。
私の現在のタスクは、プロジェクト全体にログインを導入することです。これにより、現在は表示されていない例外を見つけ、絡み合った繰り返し呼び出しを追跡し、少なくともいくつかのスタックトレースを取得できます。私はNLogを使用することにしました。これは、 log4netは完全に優れていますが、私の好みには多少劣るのとは対照的に、アクティブでクールであることがわかりました。
コンポーネントは緊密に結合されているため、関連するエラーがハードドライブ全体に分散しないように、ログを1つのファイルに一元化する必要があります。したがって、5つ以上のプロジェクトが多かれ少なかれ同時にそれぞれに書き込みを行う2つまたは3つの異なるログファイルを探しています。
ロギングを一元化するようにNLogを構成する最良の方法は何ですか?プロジェクトごとに構成ファイルを用意する必要がありますか、それとも関連するプロジェクトで共有する必要がありますか?SharePoint Webパーツからログに記録する構成ファイルはどこに置く必要がありますか?許可の問題に直面しますか?
SharePoint2007を使用しています。