写下来,别忘了
需求:把日志中的内容分开,一部分内容记录在文件A中,一部分记录在文件B中,实际上就是日志的多文件
遇到的问题:
按网上的配置修改后,只记录一个文件,另一个没记录,开始以为是配置出错,后来实在没办法,下载了log4j的源码,看了好久,才发现其实不是
主要原因是我在程序中修改了日志记录的位置,但我只修改了日志A的目录位置(改为绝对目录),没有修改日志B的位置(B采用的相对目录)结果导致日志B根本没记录到我指定的目录下,我以为没记录,实际上是记录了,只是位置不对看不见文件而已。
修改日志位置后,确实看到了2个日志文件,但是还存在问题,日志A的内容,在日志B中也有,日志B的内容在A中同样存在,而且有些日志行还记录重复了
查询的结果是,需要增加一下一行配置
log4j.additivity.com.by.smpserver.p201011.service.POSServerImpl=false
这个配置的作用是不继承父类的日志信息
附自己的配置
log4j.rootCategory=DEBUG,stdout,R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%-d{yyyy-MM-dd HH:mm:ss}][%5p][%-10c][%L]%m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=log/server.log
log4j.appender.R.MaxFileSize=1024KB
log4j.appender.R.MaxBackupIndex=50
log4j.appender.R.Append=true
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=[%-d{yyyy-MM-dd HH:mm:ss}][%5p][%-10c][%L]%m%n
log4j.logger.org.apache.commons=ERROR,R
log4j.logger.org.apache.struts=WARN,R
log4j.logger.org.springframework=DEBUG,R
log4j.logger.org.apache.velocity=FATAL,R
log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN,R
log4j.logger.org.hibernate=WARN,R
log4j.logger.com.by.occserver.global=INFO,R
log4j.logger.com.by.smpserver.p200902.service.CommServerImpl=WARN,R
log4j.logger.com.by.occserver.service.BaseClientImpl=INFO,R
log4j.logger.com.by.p200902.appserver.service.BaseCommServImpl=INFO,R
log4j.logger.com.by.occserver.global.UDPNoticeQueue=ERROR,R
log4j.logger.com.by.smpserver.p200902.service.CommServerImpl=INFO,R
log4j.logger.com.by.occserver.global.ClientUDPManager=INFO,R
log4j.rootCategory.com.by.smpserver.p200902.service.CommServIntricateCmdImpl=DEBUG,stdout,CS
log4j.rootCategory.com.by.smpserver.p201011.service.POSServerImpl=DEBUG,stdout,CS
log4j.additivity.com.by.smpserver.p200902.service.CommServIntricateCmdImpl=false
log4j.additivity.com.by.smpserver.p201011.service.POSServerImpl=false
log4j.appender.CS=org.apache.log4j.RollingFileAppender
log4j.appender.CS.File=log/commserv.log
log4j.appender.CS.MaxFileSize=1024KB
log4j.appender.CS.MaxBackupIndex=50
log4j.appender.CS.Append=false
log4j.appender.CS.layout=org.apache.log4j.PatternLayout
log4j.appender.CS.layout.ConversionPattern=[%-d{yyyy-MM-dd HH:mm:ss}][%5p][%-10c][%L]%m%n
log4j.logger.com.by.smpserver.p200902.service.CommServIntricateCmdImpl=DEBUG,CS
log4j.logger.com.by.smpserver.p201011.service.POSServerImpl=DEBUG,CS
log4j.logger.com.by.smpserver.p200902.util.BYSCHessianServlet=DEBUG,CS