Como faço para ajustar os níveis de log4j em tempo de execução?
Pergunta
Eu tenho um simples aplicativo web em execução no Tomcat 5.5 com log4j para registro. Ocasionalmente eu preciso para empurrar o registro para baixo para depurar mas a maioria do tempo eu estou feliz com INFO.
Eu posso mudar a minha configuração XML e reiniciar o aplicativo, mas eu preferiria mudar os níveis de log on the fly. Existe uma técnica padrão para isso?
Solução
Basta usar a programática API :
logger.setLevel(Level.DEBUG)
em seu programa quando você precisar mais detalhado log de saída e
logger.setLevel(Level.INFO)
para torná-lo menos extenso novamente.
Outras dicas
Eu criei um novo módulo de aplicação java (jar) para fazer isso em uma interface web em tempo de execução, e também tem uma página para ver o resultado log.
Configure o frasco é muito simples:. Deve ser colocado na pasta /WEB-INF/lib
, e adicionar um mapeamento para o servlet no arquivo /WEB-INF/web.xml
site do Project: http://www.log4jwebtracker.com