どのようにlog4j.propertiesを設定して、アプリケーションの実行ごとに1つのログファイルにするのですか? 私はファイル名にタイムスタンプを使うべきだと読んだことがありますが、時間が経つにつれて実行ごとに多くのファイルが作成されます。log4jで1回のログファイルを1つずつ
DailyRollingFileAppenderとRollingFileAppenderを試しましたが、実行ごとに1つのログを構成する方法が見つかりませんでした。ログは複数のログに分割されるべきではなく、切り捨てるべきではなく、古い実行のファイルを保存する必要があります。
各クラスは、それ自身のクラス名の静的org.slf4j.Loggerを持っています
private static final Logger log = LoggerFactory.getLogger(Foo.class);
これは私の現在のlog4j.properties
log4j.rootLogger=error, RootAppender, RootErrorAppender
#log4j.logger.com.example=info, qspaBackendAppender, stderr
log4j.logger.com.example=info, qspaBackendAppender
log4j.additivity.com.example=true
#log4j.logger.com.example.util=trace, qspaBackendAppender, stderr
#log4j.additivity.com.example.util=true
log4j.appender.qspaBackendAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.qspaBackendAppender.file=logs/qspaBackend.log
log4j.appender.qspaBackendAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.qspaBackendAppender.layout.ConversionPattern=<%d{yyyy-MM-dd HH:mm:ss}> %-5p : %C{1} %c{2} : %m%n
log4j.appender.stderr=org.apache.log4j.ConsoleAppender
log4j.appender.stderr.Target=System.err
log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
log4j.appender.stderr.layout.ConversionPattern=%-5p %c{1}:%L - %m%n
log4j.appender.RootAppender=org.apache.log4j.RollingFileAppender
log4j.appender.RootAppender.file=logs/root.log
log4j.appender.RootAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.RootAppender.layout.ConversionPattern=<%d{yyyy-MM-dd HH:mm:ss}> %-5p : %C{1} %c{2} : %m%n
log4j.appender.RootErrorAppender=org.apache.log4j.RollingFileAppender
log4j.appender.RootErrorAppender.file=logs/rootError.log
log4j.appender.RootErrorAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.RootErrorAppender.layout.ConversionPattern=<%d{yyyy-MM-dd HH:mm:ss}> %-5p : %C{1} %c{2} : %m%n
log4j.appender.RootErrorAppender.threshold=error
パーフェクト!正確に私が探していたもので、このようなカスタムFileAppenderよりはるかに簡単です:http://veerasundar.com/blog/2009/08/how-to-create-a-new-log-file-for-each-time- the-application-runs /でも同時実行では安全ではないかもしれませんが、これは私の問題ではありません – lilalinux
「Udo Klimaschewskiの答え」 - >あなたはユーザープロファイルにリンクしています。私たちはあなたが何を指しているのか分かりません。 –