我有一个问题,其中log4j没有记录到我的一个文件,我不知道为什么。我有一些运行脚本的代码,脚本可以添加使用log4j记录到文件的日志记录,我正在尝试创建一个只记录特定脚本的appender。
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
上面的appender工作,我在我的日志文件中得到这个
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 :(得分:0)
我设法解决了这个问题,它与文件有关:在我的log4j.properties中我将appender更改为file_然后在我的代码中我对文件url进行一些操作以使其与appender匹配。