Como alguém pode desligar rapidamente toda a saída do Log4J usando um log4j.properties
arquivo?
87
Defina o nível como OFF (em vez de DEBUG, INFO, ....)
Se você deseja desligar o registro de forma programática, use
List<Logger> loggers = Collections.<Logger>list(LogManager.getCurrentLoggers());
loggers.add(LogManager.getRootLogger());
for ( Logger logger : loggers ) {
logger.setLevel(Level.OFF);
}
fonte
Você pode alterar o nível para OFF, o que deve eliminar todos os registros. De acordo com o site log4j, os níveis válidos em ordem de importância são TRACE, DEBUG, INFO, WARN, ERROR, FATAL. Há um nível não documentado chamado OFF, que é um nível superior ao FATAL e desativa todo o registro.
Você também pode criar um logger de root extra para não registrar nada (nível OFF), para que possa alternar facilmente os loggers de root. Aqui está uma postagem para você começar.
Você também pode querer ler o FAQ do Log4J, porque acho que desligar todos os logs pode não ajudar. Certamente não acelerará tanto o seu aplicativo, porque o código de registro é executado de qualquer maneira, até o ponto em que o log4j decide que não precisa registrar essa entrada.
fonte
Mude o nível para o que você deseja. (Estou usando Log4j2, versão 2.6.2). Esta é a maneira mais simples, mude para
<Root level="off">
Por exemplo: ambiente de desenvolvimento de arquivos
log4j2.xml
Ambiente de produção
fonte
Além disso, também é possível desativar o log de forma programática:
Ou
Eles usam importações:
fonte