我正在尝试使用log4j为不同的包编写单独的日志。我可以使用自定义appender为不同级别编写单独的日志。
答案 0 :(得分:1)
你需要两个这样的appender:
log4j.appender.MYLOGFILE=org.apache.log4j.FileAppender
log4j.appender.MYLOGFILE.File=/abc.log
log4j.appender.MYLOGFILE.Append=true
log4j.appender.MYLOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.MYLOGFILE.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n
log4j.appender.MYLOGFILE1=org.apache.log4j.FileAppender
log4j.appender.MYLOGFILE1.File=/abcde.log
log4j.appender.MYLOGFILE1.Append=true
log4j.appender.MYLOGFILE1.layout=org.apache.log4j.PatternLayout
log4j.appender.MYLOGFILE1.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n
然后定义你的包:
log4j.logger.mypackage=MYLOGFILE
log4j.additivity.mypackage=false
log4j.logger.secondpackage=MYLOGFILE1
log4j.additivity.secondpackage=false
需要最后一行(可加性)才能让您的包继承全局appender。这样做会导致mypackage的日志消息也打印在默认的appender上。