【问题标题】:log4j2 Dynamic log file name in Javalog4j2 Java 中的动态日志文件名
【发布时间】:2018-05-24 09:35:22
【问题描述】:

我有一个简单的问题。

如何让代码动态提供日志文件名?

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">

<Appenders>
    <RollingFile name="RollingFile" fileName="${logfilename}.log"
                 filePattern="logs/$${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH}-%i.log.gz">
        <PatternLayout>
            <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy interval="6" modulate="true"/>
            <SizeBasedTriggeringPolicy size="250 MB"/>
        </Policies>
    </RollingFile>
</Appenders>

<Loggers>
    <Root level="error">
        <AppenderRef ref="RollingFile"/>
    </Root>
</Loggers>

这里的文件名为 logs/app.log

  • 如何在文件名中附加日期和时间使其动态化?虽然应用了模式,但它不起作用。
  • 这里的logs是log4j库自动创建的目录,也可以是动态的吗?

编辑在参数fileName我已经放置${logfilename}.log并设置系统属性如下:

System.setProperty("logfilename", "a_cool_logname");

现在它正在创建名为 ${logfilename}.log 的文件,这绝对不是必需的。

谢谢

【问题讨论】:

标签: java log4j log4j2 rollingfileappender


【解决方案1】:

**属性文件如下所示**

    log4j.rootLogger=DEBUG, FA


#Console Appender WE WRE NOT USING IT
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%d{dd MM yy HH:mm} %-5p  %m%n


#File Appender
log4j.appender.FA=org.apache.log4j.FileAppender
log4j.appender.FA.File=${fName}
#log4j.appender.FA.MaxFileSize=5MB
#log4j.appender.FA.MaxBackupIndex=3
log4j.appender.FA.layout=org.apache.log4j.PatternLayout
log4j.appender.FA.layout.ConversionPattern=%d{dd MM yy HH:mm} %8p  %10m%n 

# Set the logger level of File Appender to WARN
log4j.appender.FA.Threshold = INFO
log4j.appender.FA.Threshold = DEBUG

**并在JAVA中设置属性**

System.setProperty("fName", "d:\\siemens\\" + getDateTime() + c.getSimpleName() +".log");
        PropertyConfigurator.configure("log4j.properties");

如果您需要进一步查询,请告诉我

【讨论】:

  • 我正在使用log4j2 库。它可以在 xml. 中有配置文件
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-17
  • 1970-01-01
相关资源
最近更新 更多