2012-04-18 156 views
0

我有一個問題,其中log4j沒有記錄到我的一個文件,我不知道爲什麼。我有一些運行腳本的代碼,腳本可以添加使用log4j記錄到文件的日誌記錄,我試圖創建一個只記錄特定腳本的appender。log4j appender與文件的URL

log4j.logger.com.my.class=INFO, JS_LOG 
log4j.appender.JS_LOG.layout=org.apache.log4j.PatternLayout 
log4j.appender.JS_LOG.Encoding=UTF-8 
log4j.appender.JS_LOG.File=${log.outputdir}/js_service.log 
log4j.appender.JS_LOG.MaxFileSize=2MB 
log4j.appender.JS_LOG.MaxBackupIndex=10 
log4j.appender.JS_LOG.Append=true 
log4j.appender.JS_LOG=org.apache.log4j.RollingFileAppender 
log4j.appender.JS_LOG.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n 

上述附加器的工作原理和我得到這個在我的日誌文件

2012-04-18 11:25:52,043 [<MD> Inc Msg Dispatch-1 New] INFO com.my.class.file:/myfile - info 

當腳本使用上述配置記錄的東西,它記錄的形式 com.my.class.file:/myfile這似乎在日誌中的記錄器在我的log4j.properties文件中。

如果我改變了上面:

log4j.logger.com.my.class.file:/myfile=INFO, JS_LOG 
log4j.appender.JS_LOG.layout=org.apache.log4j.PatternLayout 
log4j.appender.JS_LOG.Encoding=UTF-8 
log4j.appender.JS_LOG.File=${log.outputdir}/js_service.log 
log4j.appender.JS_LOG.MaxFileSize=2MB 
log4j.appender.JS_LOG.MaxBackupIndex=10 
log4j.appender.JS_LOG.Append=true 
log4j.appender.JS_LOG=org.apache.log4j.RollingFileAppender 
log4j.appender.JS_LOG.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n 

沒有被記錄到文件中。我會認爲這應該工作?我檢索文件

回答

0

我設法解決這個問題,它與文件有關:在我的log4j.properties中,我將appender更改爲file_,然後在我的代碼中對文件url進行一些操作以使其匹配該appender。