0
我想在我的jsp和servlets中使用log4j。我閱讀Apache文檔和this blog。我試圖作爲該博客的第二種方法。這裏是我的屬性文件未找到Log4j日誌文件
log4j.logger.myapplogger=DEBUG, C, fileappender
log4j.additivity.myapplogger=true
log4j.appender.C=org.apache.log4j.ConsoleAppender
log4j.appender.C.layout=org.apache.log4j.PatternLayout
#basic pattern
log4j.appender.C.layout.ConversionPattern=[%c] [%d{dd MMM yyyy - hh:mm:ss}] %5p - %m %n
#advanced pattern (slow)
#log4j.appender.C.layout.ConversionPattern=[%c] [%d{dd MMM yyyy - hh:mm:ss}] %5p - %m - in %M() at line %L of class %C %n
log4j.appender.fileappender=org.apache.log4j.RollingFileAppender
log4j.appender.fileappender.File=${appRootPath}WEB-INF/logs/app_log.log
log4j.appender.fileappender.MaxFileSize=500KB
## Keep one backup file
log4j.appender.fileappender.MaxBackupIndex=3
log4j.appender.fileappender.layout=org.apache.log4j.PatternLayout
log4j.appender.fileappender.layout.ConversionPattern=%p %t %c - %m%n
#log4j.appender.C.layout.ConversionPattern=[%c] [%d{dd MMM yyyy - hh:mm:ss}] %5p - %m %n
這裏是我的servlet監聽
public class ApplicationServletContextListener implements ServletContextListener{
public void contextInitialized(ServletContextEvent e) {
ServletContext ctx=e.getServletContext();
String prefix=ctx.getRealPath("/");
String file="WEB-INF"+System.getProperty("file.separator")+"classes"+System.getProperty("file.separator")+"log4j.properties";
if(file !=null){
PropertyConfigurator.configure(prefix+file);
System.out.println("Log4J Logging started for application: " + prefix+file);
}else{
System.out.println("Log4J Is not configured for application Application: " + prefix+file);
}
和控制檯上顯示「Log4J日誌開始申請......」。
這裏是我嘗試測試的servlet。
private Logger log = Logger.getLogger("myapplogger");
log.error("this is a testign error");
控制檯顯示的log.But還有在WEB-INF /日誌創建/。請讓我知道我必須檢查以及如何糾正這種沒有任何日誌文件。
謝謝你Hardik.It工作。 – 2012-04-02 10:35:40
你是來吧。 – 2012-04-02 10:36:39