2012-04-17 11 views
1

WebアプリケーションでEntlib 5.0を使用してカスタムMongoDBリスナを例外ハンドラとして書きました。それは空行を含め、以下のすべての「ライン」のための文書のエントリを作成しているという事実を除いて素晴らしい作品:私がやりたいのは何エンタープライズライブラリ5.0例外ハンドラ:エラーメッセージからセクションを削除する方法

---------------------------------------- 
Timestamp: 4/17/2012 4:13:50 PM 
Message: HandlingInstanceID: c3c5f58a-89b3-4b64-b05d-3f72f998bab4 
An exception of type 'System.NullReferenceException' occurred and was caught. 
----------------------------------------------------------------------------- 
04/17/2012 16:13:50 
Type : System.NullReferenceException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 
Message : Object reference not set to an instance of an object. 
Source : MyCo.Webservices.TheCoolService 
Data : System.Collections.ListDictionaryInternal 
TargetSite : System.String TestExceptionHandling() 
Stack Trace : at Logging.TestExceptionHandling() in C:\tfs\Development\Source\MyCo.Webservices.TheCoolService\Logging\Logging.cs:line 55 


---------------------------------------- 

はように一つの文書には、この情報の大部分をスローで同じエラーに対して10種類の文書を持たないようにする。私自身のExceptionフォーマッタ(http://msdn.microsoft.com/en-us/library/ff664587(v=pandp.50).aspx)を書いていても、それぞれmongodbコレクションに新しいドキュメントを作成するcustomListener.Write()メソッドに対する複数の呼び出しを回避することはできません。

私のEntlibエクスペリエンスは限られていますが、ExceptionFormatter全体をゼロから書き込まない限り、回避する方法はわかりません。誰もがこれを回避する方法を知っている?

答えて

1

私の問題が見つかりました。 TraceData()メソッドの実装がリスナーで行方不明になっていたことがわかります。いったん何をすべきかを言えば、それは単一のWriteLine()呼び出しのようなエラーメッセージを処理しました。

関連する問題