質問

上記のトピックに関する多くの質問を見てきましたが、これに対処する質問はありません。 log4jを使用して、$ CATALINA_BASE / logs /ディレクトリにあるカスタムファイルにログを記録しようとしています。 log4j.xmlファイルを構成し、$ CATALINA_BASE / lib /ディレクトリーにコピーしました。

次の行を使用してロガーを作成します-

PatternLayout layout = new PatternLayout(); FileAppender appender = new FileAppender(" filename.txt");

ここが私の問題です。 FileAppenderにlog4j.xmlで設定したファイル名を取得させるにはどうすればよいですか?

自動的にそれを取得することを望んでいましたが、ファイル名を取得しないFileAppenderのコンストラクターはありません。

log4j.xmlを読み取ってファイルの名前を取得する必要がありますか?もしそうなら、なぜXMLでそのプロパティを設定する必要があるのですか?

ご協力いただければ幸いです。

ありがとう、 -バス

役に立ちましたか?

解決

うーん...なぜコードでFileAppenderを作成するのですか?文字列(通常はlog4j XML / propertiesファイルで構成したcom.xxx.yyy形式)を指定してLoggerFactoryを使用してロガーを作成し、ロギングを開始します。ロガーが設定ファイルでFileAppender実装(DailyまたはRollingFile)を使用するように設定されていることを確認し、すべての設定が完了していることを確認します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top