【问题标题】:How can i configure Log4j to generate new log file every time the java application runs我如何配置 Log4j 以在每次 java 应用程序运行时生成新的日志文件
【发布时间】:2012-01-26 03:24:21
【问题描述】:

如何配置 Log4j 以在每次 java 应用程序运行时生成新的日志文件? 我希望日志名称每次都不同,例如[Log file name]_[CurrentTime].log 我正在使用.property 文件来配置log4j

我正在使用 RollingFileAppender,但这对我不起作用。这是我的配置

log4j.appender.dest4=org.apache.log4j.RollingFileAppender
log4j.appender.dest4.File=.\\\\log4j\\\\user.log
log4j.appender.dest4.layout=org.apache.log4j.PatternLayout
log4j.appender.dest4.layout.ConversionPattern=[%d{dd/MMM/yyyy HH:mm:ss}] : %-5p: %m%n
log4j.appender.dest4.DatePattern='.'yyyy-MM

【问题讨论】:

    标签: log4j appender


    【解决方案1】:

    您可能想看看RollingFileAppender

    这里有一篇关于该主题的有趣帖子,它也适用于 log4jHow do I configure a RollingFileAppender to roll by date and size with log4net?

    希望对你有帮助。

    【讨论】:

    • 如果我没记错的话,附加的滚动文件只会滚动日志文件以创建新的日志文件。在这段时间内,应用程序将一直运行。每次运行应用程序时,我都想要一个新的日志文件,最好在文件名末尾附加日期和时间。这就像每次应用程序运行时都保留一个会话记录。
    【解决方案2】:

    您可以动态设置FileAppender

    SimpleLayout 布局 = new SimpleLayout();
    FileAppender appender = new FileAppender(layout,"logname."+new Date().toLocaleString(),false); logger.addAppender(appender);

    【讨论】:

      猜你喜欢
      • 2017-07-11
      • 2010-11-29
      • 1970-01-01
      • 2017-11-21
      • 2013-10-08
      • 1970-01-01
      • 2012-12-27
      • 2012-08-20
      • 1970-01-01
      相关资源
      最近更新 更多