如何根据日期获取log4j的日志文件名?
log4j配置如下:
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=${myApp.root}/WEB-INF/myApp.log
log4j.appender.logfile.DatePattern= '. 'yyyy-MM-dd
要求根据日期获取日志文件内容,比如输入 "2007-8-23 ",就将myApp.log.2003-08-23的内容显示出来。
已经写好了读取日志方法。
private void showLogs(String logFileName){
//从指定文件读取日志内容,已完成。
}
现在需要根据日期来获取文件名。
public String getLogFileName(String curDate) {
String fileName = " ";
//中间这部分怎么写?
return fileName;
}
新接触java,对些基础的还可以对付,对log4j实在不熟,希望大家帮忙。
------解决方案--------------------你是要在更改了log4j的配置以后, 还可以正确地根据日期找到日志文件吗?
如果是这样,那要看log4j有没有提供相应的接口, 或者根据log4j来实现自己的\
否则根据不变的配置, 你已经知道文件名是什么样子, getLogFileName就相当好写了...
------解决方案--------------------SimpleDateFormat sdf=new SimpleDateFormat( "yyyy-MM-dd ");
try {
fileName=sdf.format(sdf.parse(curDate));
} catch (
ParseException e1) {
e1.printStackTrace();
}
------解决方案--------------------org.apache.log4j 用法:
http://hbohuan.blog.163.com/blog/static/2084898200722704510356/
------解决方案--------------------log4j常用来打印和存储日志文件的