Configurar log4j desde beans de Spring Framework

Si queremos inicializar log4j al inicializar un contexto de Spring, el framework nos provee la clase org.springframework.util.Log4jConfigurer. Para configurar un bean utilizamos la clase org.springframework.beans.factory.config.MethodInvokingFactoryBean para invocar el método estático initLogging.

Este método recibe como parámetro un String que contiene la localización del archivo de configuración de log4j. Tiene otra sobrecarga que recibe además un long que representa el período en milisegundos en la que un thread verificará si el archivo tuvo cambios, y en caso
afirmativo, recargará la configuración de log4j.

El bean de Spring framework se define de la siguiente forma:

<br />
&lt;bean id='log4jInitializer' class='org.springframework.beans.factory.config.MethodInvokingFactoryBean'&gt;<br />
   &lt;property name='staticMethod' value='org.springframework.util.Log4jConfigurer.initLogging' /&gt;<br />
   &lt;property name='arguments'&gt;<br />
      &lt;list&gt;<br />
         &lt;value&gt;configuracion_log4j&lt;/value&gt;<br />
      &lt;/list&gt;<br />
   &lt;/property&gt;<br />
&lt;/bean&gt;<br />

El parámetro configuracion_log4j apunta a un recurso que puede estar dentro del classpath (por ejemplo, «classpath:log4j.properties«) o ser un archivo del sistema (por ejemplo «file:/home/user/sample/log4j.properties«).

Además, el archivo puede ser la configuración en forma de archivo properties o de archivo XML. Dependiendo de la extensión del archivo, el método initLogging seleccionará la
forma de inicializar la configuración (utilizando DOMConfigurator o PropertyConfigurator).

Etiquetado , . Bookmark the permalink.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *