Pregunta

He hecho algunas búsquedas en busca de información acerca de cómo hacer el registro con el Framework Spring.

Actualmente contamos con una aplicación que no tiene registro en ella, excepto para el sistema.declaraciones (de muy mala manera).

Lo que me gustaría hacer, es agregar el registro, pero también quiere ser capaz de controlar el registro en tiempo de ejecución, con decir JMX.

Estamos usando Rad 7.0 / WebSphere 6.1

Soy interesante averiguar cuál es la mejor forma(s) para lograr esto (me imagino que puede haber varias).

Actualización:Pensamientos sobre el siguiente Spring AOP Registro Bueno ideal o no.Esto es en referencia a una pregunta publicado aquí en el registro: Registro Condicional.¿Esto mejorar las cosas o simplemente hace que sea más difícil en el área de registro?

¿Fue útil?

Solución

Me gustaría utilizar Commons Logging y Log4j.Esto no es realmente una pregunta para la Primavera, sin embargo, el Springframework fuente no usa Commons Logging así.Si crea un log4j registrador y appender en log4j, puede habilitar el registro en el Springframework clases también.Hay un par de maneras para controlar el registro en tiempo de ejecución.El Log4j sandbox tiene un JSP, que se pueden colocar en su web, que le permitirá controlar el registro de los niveles de todos los registradores dentro de la aplicación.

Otros consejos

Ver las otras respuestas de log4j.Pero también considerar la posibilidad de Jamón para el monitoreo de la aplicación.Es muy fácil de añadir a un resorte de aplicación, por ejemplo:

    <bean id="performanceMonitor" class="org.springframework.aop.interceptor.JamonPerformanceMonitorInterceptor">
        <property name="useDynamicLogger" value="false"/>
        <property name="trackAllInvocations" value="true"/>
    </bean>

   <bean id="txRequired" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
            <property name="transactionManager" ref="transactionManager"/>
            <property name="transactionAttributes" >
                <props> <prop key="*">PROPAGATION_REQUIRED</prop> </props>
            </property>
        <property name="preInterceptors">
           <list>
              <ref bean="performanceMonitor"/>      
           </list>
        </property>
   </bean>

aquí se muestra un ejemplo de archivo de configuración de log4j para una consola y archivo logger.si este archivo está en la ruta de clases será leído por log4j automáticamente.Sin embargo, ya que estamos dentro de una aplicación de servidor, no puede ser de otra manera preferida de configurar el registro.Recuerdo que dentro de JBoss hay un archivo xml que había que modificar.No estoy seguro acerca de la configuración de websphere.Pero si quieres configurarlo para una simple prueba de la aplicación, esta te va.

# Set root logger level to WARN and appenders to A1 & F1.
log4j.rootLogger=WARN, A1, F1

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# logging to console only INFO
log4j.appender.A1.Threshold=INFO
# F1 is a file appender
log4j.appender.F1=org.apache.log4j.RollingFileAppender

# Tell Spring to be quiet
log4j.logger.org.springframework=WARN
# debug logging for my classes
log4j.logger.com.yourcorp=DEBUG
log4j.logger.org.hibernate=INFO

# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r : %d{HH:mm:ss,SSS} [%t] %-5p %c{1} %x - %m%n

log4j.appender.F1.File=./log/mylogfile.log
log4j.appender.F1.MaxFileSize=10MB
log4j.appender.F1.MaxBackupIndex=5
log4j.appender.F1.layout=org.apache.log4j.PatternLayout
log4j.appender.F1.layout.ConversionPattern=%-4r : %d{HH:mm:ss,SSS} [%t] %-5p %c{1} %x - %m%n
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top