Gostaria de armazenar os erros que ocorrem no meu sistema num arquivo log. Testei o log4j e funciona mas consigo somente chamando o log dentro dos try/catch. O que eu gostaria mesmo é semelhante ao listner do java, que exibe o erro em tempo de execução mesmo fora de try/catch. Tem como fazer isso ?
Obrigado
Não entendi o que você quer fazer.
Achei o seguinte:
[code]public static Logger logger = Logger.getLogger(Login.class);
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
public void uncaughtException(Thread t, Throwable ex) {
//System.out.println("You crashed thread " + t.getName());
//System.out.println("Exception was: " + ex.toString());
logger.error("", ex);
}
});
[/code]
Coloquei na minha classe principal e ela capturou o erro ao chamar o método de outra classe a partir dela. O método acima captaria erros de toda minha aplicação ? Vou fazer alguns testes enquanto.
Ahhh entendi
Tipo assim, as excessões que não forem tratadas, você quer que esse código grave em um log …
Eh, nunca tinha pensado nisso :?
Mas acho que todas excessões deveriam ser tratadas… daí você grava no log
No caso de alguma excessão inexperada isso deve ser útil né
Esse código pega todos erros não tratados.