2012-04-20 14 views
0

VBでASP.Net Webフォームを作成しています。VB多くのtry-catchブロックが既にある場合、例外ログを一般的に実装する方法

私はすでにどこでもtry-catchブロックによって例外を処理しているシステムを持っています。 すべての単一キャッチブロックにログ機能を挿入するのではなく、何かをオーバーライドするような例外ログをすばやく一般的に実装するにはどうすればよいですか?

答えて

0

PostsharpのようなAOPフレームワークを使用すると、スローされた例外をフックしてメッセージを記録することができますが、コード内で処理していない場合にのみ機能します。

あなたの最善の策は、例外処理コードをリファクタリングすることです。グローバルcatch-all例外処理以外にも、実際に例外を処理できる場所にはtry-catchブロックしか置かないようにしてください。そしてそのような場合には、なぜなのかを示すログに特定のメッセージを追加し、この例外がどのように処理されたのかをおそらく考えてください。

+0

Thanks Meta-Knight〜[OnException]属性をグローバルに適用する方法はありますか?私は、メソッドのすべての頂点にこの属性を追加する必要がない方法があることを願っています。 –

+0

@ Mr.Redpill:属性を追加することなく、例外を傍受する方法があります。しかし、私は正確にどのように覚えていません。ポストシャープフォーラムで助けを求めることができます。 –

+0

Meta-Knightありがとうございました。 –

関連する問題