我正在研究一組Web服務,我們希望每天都有一個輪換的日誌。在log4j中配置RollingFileAppender
我試圖從log4j extras companion工作中獲得org.apache.log4j.rolling.RollingFileAppender
,因爲文檔建議這對於生產環境來說是最好的。
我在類路徑上都有log4J庫(log4j-1.2.15.jar
)和log4j臨時庫(apache-log4j-extras-1.1.jar
)。
我在log4j.properties
文件的appender以下配置:
### SOAP Request Appender
log4j.appender.request=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.request.File=SOAPmessages.log
log4j.appender.request.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.request.RollingPolicy.ActiveFileName =SOAPmessages-%d.log
log4j.appender.request.RollingPolicy.FileNamePattern=SOAPmessages-%d.log.zip
log4j.appender.request.layout = org.apache.log4j.PatternLayout
log4j.appender.request.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
然而,當我在調試模式下的log4j啓動Web服務,我得到這些錯誤消息:
log4j: Parsing appender named "request".
log4j: Parsing layout options for "request".
log4j: Setting property [conversionPattern] to [%d{ABSOLUTE} %5p %c{1}:%L - %m%n].
log4j: End of parsing for "request".
log4j: Setting property [file] to [/logs/SOAPmessages.log].
log4j:WARN Failed to set property [rollingPolicy] to value "org.apache.log4j.rolling.TimeBasedRollingPolicy".
log4j:WARN Please set a rolling policy for the RollingFileAppender named 'request'
log4j: Parsed "request" options.
我發現有關如何配置這個appender有點稀疏的文檔,所以誰能幫我修復我的配置?
EDIT0:新增調試模式輸出,而不僅僅是標準的警告
提供要解決此問題的一個例子,我想你可以嘗試打開Log4j的調試模式,看看是否有任何更詳細的錯誤信息 – 2011-02-25 15:16:36
不是一個答案,只是一個建議。你真的應該看看logback。它比log4j更加靈活。 – 2011-03-14 20:38:37
僅供參考:此問題在log4j v1.2.16中修復。它現在支持通過屬性文件設置rollingPolicy。 https://issues.apache.org/bugzilla/show_bug.cgi?id=36384 – Kevin 2011-09-30 22:07:50