C#で作成したアプリケーションでログ出力にlog4netを使っています。
そこで、log4netの機能でクラス名を出力できますが、
それを利用して、log4net.configに拡張領域的ななにかものを追加して、
そこに明記されたクラスしかログを出力できないようにしたいと考えています。
現在、Appenderが複数あり、この既存のAppenderに対しては特に上記の制限なく全クラスで出力し、今回新たに追加するAppenderに対して出力可能クラスを設定できるようにしたいです。
各クラスでログを出力する際は、log4netを直接使うのではなく、
log4net用に作成したFacadeクラスを呼び出し、
そこに出力メッセージと処理状態を持つエンティティとどのAppenderの使うのかを渡し、出力するような形です。
log4net用のFacadeクラスは主にAppenderごとに出力するログを形成する関数を持ち、log4netに渡しているような形です。
なので手を加えるとしたらFacadeクラスなのかなぁと思っているのですが、
何かいい方法はないかと頭を悩ませています。
log4net.configを拡張したいと思った理由は、
単純にlogの設定はすべてここに集約させたかったからです。
環境に応じてlog4net.configを修正するだけで済むようにしたいです。
log4net自体を修正するのも最悪ありかなと思ってますが、
あまりしたくないです。。。
影響範囲を考えるのとテストをしたくないからです。。。すみません。。。
ちょっとわがままが過ぎるかもしれませんが、お力添えをお願いいたします。
log4net詳しい方いらっしゃいますか…?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。