log4j生成的日志文件,怎么找不到??
猪猪飞侠 2010-04-09 10:21:31 最近用Struts2开发了一个小项目,想用log4j把日志信息输到控制台上和文件里边,控制台输出实现了,但却找不到生成的日志文件,
log4j.properties配置如下:
og4j.rootLogger=INFO, file1,logfile
log4j.appender.file1.layout=org.apache.log4j.PatternLayout
log4j.appender.file1=org.apache.log4j.ConsoleAppender
log4j.appender.file1.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=log.log
log4j.appender.logfile.MaxFileSize=1024KB
# Keep three backup files.
log4j.appender.logfile.MaxBackupIndex=3
# Pattern to output: date priority [category] - message
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
LogInit.java如下:
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log4jInint extends HttpServlet {
private static final long serialVersionUID = 1L;
private static Logger logger = Logger.getLogger(Log4jInint.class);
public Log4jInint() {
}
public void init(ServletConfig config) throws ServletException {
String prefix = config.getServletContext().getRealPath("/");
String file = config.getInitParameter("log4j");
String filePath = prefix + file;
Properties props = new Properties();
try {
FileInputStream istream = new FileInputStream(filePath);
props.load(istream);
istream.close();
String logFile = prefix
+ props.getProperty("log4j.appender.logfile.File");// 设置路径
props.setProperty("log4j.appender.logfile.File", logFile);
PropertyConfigurator.configure(props);// 装入log4j配置信息
logger.info("log4j init success!");
} catch (IOException e) {
logger.error("Could not read configuration file [" + filePath
+ "].");
logger.error("Ignoring configuration file [" + filePath + "].");
return;
}
}
}
web.xml 对log4j的配置如下:
<servlet>
<servlet-name>log4j-init</servlet-name>
<servlet-class>com.creditcard.util.Log4jInit</servlet-class>
<init-param>
<param-name>log4j</param-name>
<param-value>WEB-INF/classes/log4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
找不到生成的日志文件,望高手给予指点,感激不尽······