我正在使用 org.apache.http.client 库,这有一些默认日志记录。我还设置了 log4j 来处理我的常规日志记录和 http 客户端日志记录。
我遇到的问题是我不希望 http 客户端登录到 MySQL 数据库。
这是 log4j 的属性文件:#define 控制台附加程序 log4j.appender.consoleAppender = org.apache.log4j.ConsoleAppender
# now define the layout for the appender
log4j.appender.consoleAppender.layout = org.apache.log4j.PatternLayout
log4j.appender.consoleAppender.layout.ConversionPattern==%d{yyyy MM dd HH:mm:ss} %p %t %c - %m%n
# now map our console appender as a root logger, means all log messages will go to this appender
log4j.rootLogger = DEBUG, debugTrack, DB
log4j.logger.org.apache=DEBUG, debugTrack, DB
log4j.logger.infoLogger=INFO, infoTrack, DB
log4j.logger.org.apache.http=httpcomm
log4j.logger.org.apache.http.wire=httpcomm
log4j.additivity.org.apache=false
log4j.additivity.infoLogger=false
log4j.appender.debugTrack=org.apache.log4j.RollingFileAppender
log4j.appender.debugTrack.Threshold=DEBUG
log4j.appender.debugTrack.File=log//debugTrack.log
log4j.appender.debugTrack.MaxFileSize=2MB
log4j.appender.debugTrack.MaxBackupIndex=2
log4j.appender.debugTrack.layout = org.apache.log4j.PatternLayout
log4j.appender.debugTrack.layout.ConversionPattern=%d{yyyy MM dd HH:mm:ss} %p %t %c - %m%n
log4j.appender.infoTrack=org.apache.log4j.RollingFileAppender
log4j.appender.infoTrack.Threshold=INFO
log4j.appender.infoTrack.File=log//infoTrack.log
log4j.appender.infoTrack.MaxFileSize=2MB
log4j.appender.infoTrack.MaxBackupIndex=2
log4j.appender.infoTrack.layout = org.apache.log4j.PatternLayout
log4j.appender.infoTrack.layout.ConversionPattern=%d{yyyy MM dd HH:mm:ss} %p %t %c - %m%n
log4j.appender.httpcomm=org.apache.log4j.RollingFileAppender
log4j.appender.httpcomm.Threshold=DEBUG
log4j.appender.httpcomm.File=log//HTTPCommunication.log
log4j.appender.httpcomm.MaxFileSize=2MB
log4j.appender.httpcomm.MaxBackupIndex=2
log4j.appender.httpcomm.layout=org.apache.log4j.PatternLayout
log4j.appender.httpcomm.layout.ConversionPattern=%d{yyyy MM dd HH:mm:ss} %p %t %c - %m%n
log4j.appender.DB=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DB.URL=jdbc:mysql://server/database
log4j.appender.DB.driver=com.mysql.jdbc.Driver
log4j.appender.DB.user=root
log4j.appender.DB.password=********
log4j.appender.DB.sql=INSERT INTO tbl_logs(logDate,logger,level,message) VALUES('%d{yyyy-MM-dd HH:mm:ss}','%C','%p','%m')
log4j.appender.DB.layout=org.apache.log4j.PatternLayout
有一个信息记录器和一个调试记录器,我希望继续记录到文件和数据库。我还希望将 HTTP 客户端记录到文件而不是数据库。
有人可以指出我实现这一目标的正确方向吗?
非常感谢内森