Foros del Web » Programación para mayores de 30 ;) » Java »

log4j: se puede identificar si una excepcion ya fue logueada ?

Estas en el tema de log4j: se puede identificar si una excepcion ya fue logueada ? en el foro de Java en Foros del Web. Quería saber si es posible identificar si el log que recibo es de una misma excepción. Por ejemplo: tengo un excepción, en el catch la ...
  #1 (permalink)  
Antiguo 01/10/2011, 16:20
 
Fecha de Ingreso: marzo-2007
Mensajes: 302
Antigüedad: 17 años, 9 meses
Puntos: 2
Pregunta log4j: se puede identificar si una excepcion ya fue logueada ?

Quería saber si es posible identificar si el log que recibo es de una misma excepción.

Por ejemplo: tengo un excepción, en el catch la logueo (mandando la traza a un mail) y la vuelvo a lanzar. A su vez también logueo cuando la atrapa el de arriba. (vuelvo a mandar mail).

Entonces terminaría teniendo mails con trazas duplicadas. Hay forma de evitar esto?

Grx!
  #2 (permalink)  
Antiguo 01/10/2011, 16:39
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 7 meses
Puntos: 306
Respuesta: log4j: se puede identificar si una excepcion ya fue logueada ?

Log4j no es más que una especie de system.out.print

Es decir, va a mostrar lo que tú le digas que muestre, el control de las excepciones es independiente del log4j. Lo que tienes que preguntarte es por qué estás tratando y relanzando una excepción.

Lo habitual es que las excepciones solo se traten una vez, si tú estás lanzando de nuevo una excepción ya tratada, posiblemente uno de los dos tratamientos es innecesario.

Aquí tienes una página con anti-patrones de tratamiento de excepciones, y por lo que comentas, tú te refieres a este caso

http://today.java.net/article/2006/0...ns#logAndThrow

De todas formas, esto no es una ciencia exacta, hay distintas opiniones.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: log4j
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:00.