Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/02/2010, 09:37
ccacique
 
Fecha de Ingreso: agosto-2009
Mensajes: 12
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Instalar Log4J

Hola en spring lo puedes hacer de la siguiente manera:

1. Copiar el jar del log4j a tu classpath:
2. Declarar un bean de spring para su integración con el log4j:
Código Javascript:
Ver original
  1. <!-- Inicialización del log4j: -->
  2.     <bean id="log4jInitialization" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
  3.         <property name="targetClass" value="org.springframework.util.Log4jConfigurer" />
  4.         <property name="targetMethod" value="initLogging" />
  5.         <property name="arguments">
  6.             <list><value>C:\\logs\spring.config</value></list>
  7.         </property>
  8.     </bean>

3. Crear un archivo de configuración del log4j: spring.config(puedes colocarle el nombre que quieras pero debe ser el mismo referenciado que en el bean de spring)

Código txt:
Ver original
  1. #### Que es lo que vamos a loguear:
  2. log4j.rootLogger=DEBUG,fileAppender,consolaAppender
  3. log4j.logger.org.springframework=DEBUG,fileAppender,consolaAppender
  4. log4j.logger.javax.transaction=DEBUG,fileAppender,consolaAppender
  5.  
  6.  
  7. #### Escribimos el log hacia la consola:
  8. log4j.appender.consolaAppender=org.apache.log4j.ConsoleAppender
  9. log4j.appender.consolaAppender.layout=org.apache.log4j.PatternLayout
  10. log4j.appender.consolaAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} (%F:%L) %-5p %t %c - %m%n
  11.  
  12. #### Escribimos el log hacia un archivo:
  13. log4j.appender.fileAppender=org.apache.log4j.RollingFileAppender
  14. log4j.appender.fileAppender.File=C:\\logs\\spring.log
  15. log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout
  16. log4j.appender.fileAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %t %c - %m%n
  17. log4j.appender.fileAppender.MaxFileSize=100MB
  18. log4j.appender.fileAppender.MaxBackupIndex=10
  19. log4j.appender.fileAppender.Threshold=debug
  20. log4j.appender.fileAppender.Append=true

4. Empezar a utilizar el logger:
Código Javascript:
Ver original
  1. @Service("facadeService")
  2. @Transactional
  3. public class FacadeServiceImpl implements FacadeService {
  4.  
  5.     private final Logger logger = Logger.getLogger(getClass());
  6.    
  7.     @Autowired
  8.     private MovimientoBBVADAO movimientoBBVADAO;
  9.    
  10.     @Autowired
  11.     private MovimientoScotiabankDAO movimientoScotiabankDAO;
  12.    
  13.     @Override
  14.     @Transactional(rollbackFor=Exception.class,readOnly=false)
  15.     public void transferenciaInterbancaria(Movimiento movimiento) throws Exception {
  16.         logger.info("INICIANDO TRANSFERENCIA...");
  17.         movimientoBBVADAO.retirarBBVA(movimiento);
  18.         movimientoScotiabankDAO.depositarScotiabank(movimiento);
  19.         logger.info("TRANSFERENCIA FINALIZADA...");
  20.     }
  21. }

El resultado es algo como esto:
Código txt:
Ver original
  1. 2010-02-24 10:31:57 (JakartaCommonsLoggingImpl.java:27) DEBUG main java.sql.PreparedStatement - {pstm-100003} Parameters: [1500, 0000000004]
  2. 2010-02-24 10:31:57 (JakartaCommonsLoggingImpl.java:27) DEBUG main java.sql.PreparedStatement - {pstm-100003} Types: [java.math.BigDecimal, java.lang.String]
  3. 2010-02-24 10:31:57 (FacadeServiceImpl.java:30) INFO  main pe.com.slcsccy.testspring.service.FacadeServiceImpl - TRANSFERENCIA FINALIZADA...


Carlos Cacique.
http://carloscacique.blogspot.com