9

log4net を使用しているときに、ログ メッセージのレベルに基づいて異なるレイアウトにする方法はありますか? たとえば、致命的なエラーの場合、可能な限りすべての情報 (クラス名、メソッド名、行番号など) を確認したいとします。しかし、通常、デバッグ、および警告については、メッセージのみを表示したいと考えています (できれば、パフォーマンスを向上させます)。

C# WinForms で log4net を使用しています。私の要件は、致命的なエラーが発生したときに、以前のすべての 512 メッセージをファイルに記録することです。クラス名、メソッド名、行番号などは、致命的なエラーに対してのみ、他のすべてのレベルに対してはメッセージのみで表示したいと考えています。

4

3 に答える 3

2

この投稿には、log4net構成ファイルの適切な説明があります。

log4net構成

アペンダーのレイアウト要素に注意してください。これらは、エラーと選択した情報がどのように出力されるかのパターンを定義します。

于 2008-09-24T14:13:31.827 に答える
2

I think you're looking for LevelRangeFilter and a two-appender combination. One appender/filter combo for FATAL level (fatal being the min and max) and one appender/filter combo for everthing else (with ERROR or INFO being the max depending on if you wanted to include errors for debugging purposes)

Example here: What do you have in your log4net config? Hacks, optimizations, observations?

于 2010-10-22T17:26:23.747 に答える
1

「レベル」ごとに異なるアペンダーを使用し、それらを同一にすることができますが、パターンレイアウトは異なります。

于 2008-09-24T13:53:33.780 に答える