2

MDC を使用してプログラムにコンテキストを設定し、構成ファイルにフィルターを設定して、特定のコンテキストでロガーからのメッセージのみを表示できるようにしたいと考えています。

MDC mdc; 
mdc.put("fieldName", "foo"); 
LOG4CPLUS_DEBUG(log, "ABC"); 

mdc.put("fieldName", "bar"); 
LOG4CPLUS_DEBUG(log, "XYZ"); 

からのみ印刷logしたいので、「XYZ」のみをログに出力する必要があります。"fieldName""bar"

log4j では、フィルターを含む XML 形式の構成ファイルを使用してこれを行うことができます。log4cplus は XML 構成ファイルを使用できますか? このようなフィルターを XML ログに設定できますか?

また、log4cplus を詳細にする方法はありますか?設定ファイルが見つかっているかどうか、それを読み取ることができるかどうかなどを確認できます。

log4cplus XML 構成ファイルの例を 1 つでも見つけたり、読み方に問題があります。

4

1 に答える 1

2

Log4cplus は、どの種類の XML 構成ファイルもサポートしていません。これは、XML パーサーが必要であり、依存関係がかなり大きいためです。

MDC を使用したフィルタリングに関しては、現在、そのようなフィルターはありません。独自に実装する必要があります。Filterクラスを参照してください。

を使用して、プロパティ ファイルから log4cplus デバッグを設定できますlog4cplus.configDebug=1LOG4CPLUS_LOGLOG_DEBUGENABLEDまたは、環境変数を に設定できます1。前者は後者よりも優先されます。

于 2014-04-02T16:09:35.787 に答える