2

私のシステムには、Windows サービス、Web サービス、Web サイトなど、多くのコンポーネントが含まれており、それらはすべて C# で記述されています。現在、すべてのコンポーネントは、ラッパー DLL を使用して NLog を使用して DB にログを記録しており、それぞれが個別の構成ファイルを保持しています (ほとんど同じです)。

すべての構成ファイルを NLog の単一のグローバル構成に統合したいと考えています。各コンポーネントからグローバル構成を取得する最良の方法は何ですか? 単一のグローバルファイル?構成プロバイダー サービス?

4

1 に答える 1

0

同様の要件がありました(特にNLogではありませんが)。7 つの異なるサービスが実行されているシステムがあり、後でレポートするためにそれぞれのアクティビティをログに記録する必要がありました。

私の解決策:8番目のコンポーネント...モニターを作成しました。これに伴い、他の 7 つのサービスで XML シリアル化を使用しました。彼らは、モニターが定期的にスイープする既知の場所で、XML「パケット」をディスクにシリアライズします。スイープでは、パケットを収集してデシリアライズし、日時順に公式のログ ファイルを生成します。

私が調査している別のオプションは、名前付きパイプを使用してモニターと直接通信し、ファイル I/O とそれに関連するすべての問題を回避することです。

于 2013-03-25T00:39:22.780 に答える