Log4j中带有日期的文件名

我正在尝试将当前日期附加到log4j日志文件中。所以会是这样的:

myApp-2011-01-07.log

事实是,我不想使用DailyRollingFileAppender。原因是每天将运行另一个脚本,该脚本将备份logs文件夹中的所有内容。它在Tomcat5.5下运行。

在log4j中可以吗?

回答:

我认为您可以在代码中设置系统属性以包含当前日期:

static{

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

System.setProperty("current.date", dateFormat.format(new Date()));

}

然后,在log4j.xml文件中,当在追加程序中指定日志文件名时,可以使用system属性:

<appender name="MYAPPENDER" class="org.apache.log4j.FileAppender">

<param name="File" value="${user.home}/myApp-${current.date}.log" />

预计到现在,您可能必须使用静态初始化程序来设置系统属性,以确保在配置log4j之前已设置该属性。

以上是 Log4j中带有日期的文件名 的全部内容, 来源链接: utcz.com/qa/422667.html

回到顶部