Qual é a abordagem correta para registrar uma mensagem de erro e uma exceção usando SLF4J ?
Eu tentei fazer isso, mas o rastreamento de pilha de exceção nunca é impresso:
logger.error("Unable to parse data {}", inputMessage, e);
Neste caso, desejo preencher {}
com o inputMessage
, bem como efetuar logout do stacktrace de exceção.
A única maneira que vejo de fazer isso é:
logger.error("Unable to parse data " + inputMessage, e);
o que não é bonito.
Respostas:
A partir do SLF4J versão 1.6, o SLF4J interpretará o último parâmetro como você deseja, ou seja, como uma exceção. Você deve usar uma versão anterior da API SLF4J.
fonte
Throwable
e depois tem um var-arg? Existem problemas de apagamento? Este é um padrão em outras bibliotecas para ter a exceção passada como o último argumento?