2012-06-05 15 views
7

Me gustaría desactivar el registro log4j para Spring 3.1 mientras dejo cosas en depuración para mi propio código.Cómo desactivar el registro de depuración de Spring 3?

he intentado pegar esta línea en mis log4j.properties:

log4j.category.org.springframework = WARN 

Para conseguir esto:

# Root Logger Setup: Includes the level of reporting and appenders -> where 
#      log messages get sent            
log4j.rootLogger       = DEBUG,ca,fa 

log4j.category.org.springframework = WARN 

#ca - Console Appender - Send messages to the console 
log4j.appender.ca       = org.apache.log4j.ConsoleAppender 
log4j.appender.ca.layout     = org.apache.log4j.PatternLayout 
log4j.appender.ca.layout.ConversionPattern = [acme]: [%-5p] - %d{yyyy-MMM-dd HH:mm:ss} - %c{1}:%M(): %m%n 



#fa - File Appender - Send messages to a log file 
log4j.appender.fa       = org.apache.log4j.RollingFileAppender 
log4j.appender.fa.File      = acme.log 
log4j.appender.fa.MaxFileSize    = 100KB 
log4j.appender.fa.MaxBackupIndex    = 10 
log4j.appender.fa.Threshold     = DEBUG 
log4j.appender.fa.layout      = org.apache.log4j.PatternLayout 
log4j.appender.fa.layout.ConversionPattern = [%-5p] - %d{yyyy-MMM-dd HH:mm:ss} - %c{2}:%M(): %m%n 

No hubo suerte en el cierre de la salida de depuración de primavera sin embargo.

Gracias de antemano por cualquier ayuda

Steve

Respuesta

1

Me di cuenta de esto.

En mi classpath tengo un directorio C: \ Classes para mayor comodidad cuando estoy experimentando con cosas. Tenía otro archivo log4.properties allí, que reemplazaba al que estaba empaquetado en mi WAR, lo que hace que parezca que la siguiente técnica no funcionaba. Cambié el nombre de log4.properties en mi C: \ Classes y todo está bien.

Gracias a todos los que han echado un vistazo y gracias a la gente de Spring Source que hizo que sea necesario. Es bueno saber que un nivel extenso de depuración está disponible para mí cuando lo deseo en lugar de obtener una caja negra.

7

¿Son todas sus dependencias en lugar?

1.3.2.3 Usando Log4J

Mucha gente utiliza Log4j como un marco de registro para fines de configuración y administración. Es eficiente y está bien establecido, y de hecho es lo que usamos en tiempo de ejecución cuando construimos y probamos Spring. Spring también proporciona algunas utilidades para configurar e inicializar Log4j, por lo que tiene una dependencia de tiempo de compilación opcional en Log4j en algunos módulos.

Para hacer que Log4j funcione con la dependencia de JCL por defecto (commons-logging) todo lo que tiene que hacer es poner Log4j en classpath y proporcionarle un archivo de configuración (log4j.properties o log4j.xml en la raíz del classpath). Así que para los usuarios de Maven esta es su declaración de dependencia:

<dependencies> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>3.0.0.RELEASE</version> 
     <scope>runtime</scope> 
    </dependency> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.14</version> 
     <scope>runtime</scope> 
    </dependency> 
</dependencies> 

Y aquí está una muestra log4j.properties para iniciar la sesión en la consola:

log4j.rootCategory=INFO, stdout 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n 

log4j.category.org.springframework.beans.factory=DEBUG 
+1

Y asegúrese de que no hay ningún archivo log4j.xml o log4j.properties en su classpath – Neron

Cuestiones relacionadas