2011-07-06 10 views
6

Quiero filtrar ciertas líneas de los rastros de pila usando log4j (como net.sf.cglib.* y org.springframework.*). ¿Es posible configurar esto con log4j?¿Cómo se filtran ciertas líneas de un registro de pila log4j?

En eclipse, el complemento junit le permite agregar filtros que modifican los rastros de pila que se muestran en la pestaña junit, pero esto no cambia la salida de trazas de pila a la consola.

+0

No puedes modificar los log4j.properties o XML normales ¿archivo? Puede agregar -Dlog4j.debug para encontrar el archivo de configuración que está usando – davidfrancis

+0

Oh perdón rastros de pila, solo lea la pregunta correctamente. Nunca lo hice yo mismo – davidfrancis

Respuesta

2

Usar este filtrado diseño log4j complemento: http://www.openmindlab.com/lab/tools/openutilslog4j/layout.html

Tienen un ejemplo con log4j.xml en esa página. Sólo tiene que utilizar el it.openutils.log4j.FilteredPatternLayout en lugar de la PatternLayout log4j, y luego poner algunas entradas como

<param name="Filter" value="net.sf.cglib"/> 
    <param name="Filter" value="org.springframework"/> 

a continuación.

1

Acabo de publicar una biblioteca de código abierto que filtra la stacktrace muy bien. Aquí está el enlace a un artículo corto sobre la biblioteca: http://www.coderanch.com/t/661077/blogs/Open-Source-Java-library-stacktrace#3068017 También aquí hay un enlace a las fuentes github: https://github.com/michaelgantman/Mgnt y aquí se Maven dependenciesfor que:

<dependency> 
<groupId>com.github.michaelgantman</groupId> 
<artifactId>MgntUtils</artifactId> 
<version>1.04</version> 
</dependency> 
<dependency> 
<groupId>com.github.michaelgantman</groupId> 
<artifactId>MgntUtils</artifactId> 
<version>1.04</version> 
<classifier>javadoc</classifier> 
</dependency> 
<dependency> 
<groupId>com.github.michaelgantman</groupId> 
<artifactId>MgntUtils</artifactId> 
<version>1.04</version> 
<classifier>sources</classifier> 
</dependency> 
Cuestiones relacionadas