2011-05-10 15 views
55

¿Cuál es el enfoque correcto para conectarse a la vez un mensaje de error y el uso de una excepción SLF4J?Cómo iniciar sesión excepción y el mensaje con marcadores de posición con SLF4J

He intentado hacer esto, pero el seguimiento de pila de excepción no se imprime:

logger.error("Unable to parse data {}", inputMessage, e);

En este caso quiero poblar {} con el inputMessage, así como el cierre de una sesión StackTrace excepción.

La única forma que veo de hacer esto sería hacer esto:

logger.error("Unable to parse data " + inputMessage, e);

que no es bastante.

Respuesta

94

A partir de la versión 1.6 SLF4J, SLF4J interpretará el último parámetro del modo deseado, es decir, como una excepción. Debe estar usando una versión anterior de la API SLF4J.

+0

Muchas gracias por señalarlo. – pjp

+5

¿Está esto descrito en el Javadoc? Esperaba encontrar información similar aquí: http://www.slf4j.org/apidocs/org/slf4j/Logger.html – Scot

+0

Te creo, pero al igual que @Scot, esperaba que este comportamiento estuviera documentado. – Stephan

0

También está trabajando con SLF4J versión 1.7. Por lo tanto, no necesita degradarse a una versión anterior.

+0

Esto es más un comentario que una respuesta. –

Cuestiones relacionadas