2016-11-22 26 views
1

我想在Tomcat 7中使用Apache log4j。我需要日誌在調試模式下,我已經使用了Apache log4j和Tomcat 7 DEBUG相關日誌只登錄到「catalina.log」,但不僅登錄到catalina.YYYY-mm-dd.log文件

log4j.rootLogger=DEBUG, stdout, file 

我也使用了文件滾動以便每天在一個單獨的文件中獲取日誌。

log4j.appender.file=org.apache.log4j.RollingFileAppender 

但在調試模式下,所有調試相關的日誌被記錄到「catalina.out的」文件,而不是每天創建的日誌,我看不到任何調試相關的日誌在每天創建的日誌文件只INFO和嚴重存在於其中。而我的另一個問題是如何更不要登錄到一切catalina.log文件作爲該文件的大小不斷增加,我已經使用

log4j.rootLogger=DEBUG, stdout, file 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p  %c{1}:%L - %m%n 

log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.MaxFileSize=5MB 
log4j.appender.file.MaxBackupIndex=10 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

依賴關係:

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.5.6</version> 
    </dependency> 
+0

只是一個提示。如果您使用的是SLF4J,那麼使用XML配置要好得多...... – Jay

回答

0

如果您在Windows環境中工作,請在下面一行代碼添加到您的文件日誌記錄配置:

log4j.appender.file.File = $ {catalina.home} \\ yourLog.log

這將直接指向tomcat-> bin文件夾。如果你想專門在tomcat-> logs文件夾下進行相應的配置,只需向後退一步。

0

這是因爲使用Apache Tomcat有一個自定義版本的Log4J(引用爲JULI)。

Tomcat Documentation

用於Apache Tomcat的內部記錄使用巨力,Apache的百科全書的包裝更名 叉記錄,默認情況下,被硬編碼爲使用所述 的java.util.logging框架。這確保了Tomcat內部的 日誌記錄和任何Web應用程序日誌記錄將保持獨立,如果Web應用程序使用Apache Commons日誌記錄,即使是 。

你可以使用:

log4j.rootLogger=TRACE, file, stdout 

# Direct log messages to a log file 
log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=C:\\logging.log 
log4j.appender.file.MaxFileSize=10MB 
log4j.appender.file.MaxBackupIndex=10 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n %c{1}:%L - %m%n 
+0

這沒有幫助..它能解決在日常創建的日誌文件中看到調試日誌嗎? – CodingFreak

+0

你把這些設置放在哪裏? – Jay

+0

log4j.properties文件 – CodingFreak