0

次のように、つまり4つのアペンダーがあります

appender name= LogFileAppender // to write  general logs in File 

appender name=LogDatabaseAppender// to write general logs in db via Oracle StoredProc

appender name=ExceptionFileAppender // to write  exception  logs in File 

appender name=ExceptionDatabaseAppender // to write exception logs in db via Oracle StoredProc

使用するアペンダーを設定できる appconfig ファイルが必要です。さらに、次のようなメソッドがあります Method_WriteLogOnly ---> アペンダー 1 または 2 を使用します Method_WriteExceptionLogs---> アペンダー 3 または 4 を使用します

問題は、両方のメソッドに同じ log4net.config.xml ファイルを使用しているかどうか、次にアペンダーを設定する方法がわからないことです。

プログラムでアペンダーを設定するか、 app.config または web.config ファイルがある場合のような別の構成場所を介してアペンダーを設定し、アペンダーを選択するためのキーと値のペア (このようなコードのようなもの) を記述します。 ?

4

1 に答える 1

0

使用するアペンダーをコードで決定するべきではないと思います。ログに記録するものを決定する必要がありますが、アプリケーションを実行する人は、ログに記録する方法を決定する必要があります。

例外用に別のファイルが必要なことは理解できますが、なぜ2つのデータベースアペンダーを使用するのか少し疑問に思います。別のテーブルに書き込む必要がある場合は、ストアドプロシージャ内で簡単に行うことができます。これにはいくつかの利点があります。構成が簡単になり、データベース接続が1つだけになります...

「例外==レベルERRORのメッセージ」と言うだけで十分だとすると、2つのアペンダーを簡単に作成し、フィルターを使用して、レベルERRORのメッセージのみが「例外」ログファイルに記録されるようにすることができます。

于 2010-06-04T09:11:08.240 に答える