Utilizo una biblioteca heredada que escribe registros usando log4j. Mi archivo predeterminado log4j.properties dirige el registro a la consola, pero en algunas funciones específicas de mi programa principal, me gustaría deshabilitar el registro por completo (de todas las clases).Cómo deshabilitar el registro de log4j desde el código de Java
yo probamos este:
Logger.getLogger(BasicImplementation.class.getName()).setLevel(Level.OFF);
donde "BasicImplementation" es una de las principales clases que no madereras, pero que no funcionó - los registros todavía se escriben en la consola.
Aquí está mi 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
Es probable que usted tiene que desactivar el registrador de la raíz, pero por favor, puesto que su 'log4j.properties' /' log4j.xml' primero. – MaDa
OK, lo publiqué –