我使用使用log4j寫入日誌的舊式庫。我的默認log4j.properties文件將日誌指向控制檯,但是在我的主程序的某些特定功能中,我希望完全禁用所有類的日誌記錄。如何從Java代碼中禁用log4j日誌記錄
我嘗試這樣做:
Logger.getLogger(BasicImplementation.class.getName()).setLevel(Level.OFF);
其中「BasicImplementation」是沒有記錄的主要類別之一,但它沒有工作 - 日誌仍然寫入控制檯。
這裏是我的log4j.properties:
log4j.rootLogger=warn, stdout
log4j.logger.ac.biu.nlp.nlp.engineml=info, logfile
log4j.logger.org.BIU.utils.logging.ExperimentLogger=warn
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %-5p %d{HH:mm:ss} [%t]: %m%n
log4j.appender.logfile = ac.biu.nlp.nlp.log.BackupOlderFileAppender
log4j.appender.logfile.append=false
log4j.appender.logfile.layout = org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern = %-5p %d{HH:mm:ss} [%t]: %m%n
log4j.appender.logfile.File = logfile.log
很可能,你必須禁用根記錄器,但請首先發表您的'log4j.properties' /'log4j.xml'。 – MaDa 2012-01-03 09:22:37
好的,我貼了 – 2012-01-03 10:27:26