¿Cómo cambiar el nivel de log en tiempo de ejecución?

0
19365

Log4J: ¿Cómo cambiar el nivel de log en tiempo de ejecución?

Una tarea fundamental en todo proyecto informático es la generación de log o trazas, generalmente para detectar y solucionar los posibles errores
que pudieran producirse.

Debido a que no todos las aplicaciones pueden pararse para cambiar el nivel de log, es preciso tener un mecanismo para modificar el comportamiento de las trazas en tiempo de ejecución.

A continuación vamos a ver un ejemplo de como poder modificar la configuración de Log4j en caliente (sin parar la aplicación)

El ejemplo

Archivo de configuración de Log4j: logging.xml

Si ejecutamos la aplicación y cambiamos el nivel de log de error a debug podrímos obtener una salida como la que se muestra a continuación, en donde podemos ver como las primeras salidas están a nivel de ERROR pero luego comienzan a sacarse también trazas de DEBUG.

test_archive.log

Otros tutoriales relaccionados

Conclusiones

La gestión de trazas es una parte fundamental de toda aplicación, por lo que es recomendable establecer alguna política o pautas al respecto dentro del proyecto.

Recordar que la mayor parte del dinero de un sistema informático se va en mantenimientos, así que un buen sistema de logs nos hará la vida más fácil y nos permitirá ahorrar muchos esfuerzos (dinerito).

Un saludo, Carlos García, creador de Mobiletest.

Autentia Real Business Solutions.


A continuación puedes evaluarlo:

Regístrate para evaluarlo









Por favor, vota +1 o compártelo si te pareció interesante

Share
|







Anímate y coméntanos lo que pienses sobre este TUTORIAL:

Fecha publicación: 2008-07-17-09:25:27

Autor:

[Carlos] Seguramente hicieras algo mal o era un bug de la maquina virtual.. pruébalo ahora de nuevo…

Fecha publicación: 2008-07-17-08:55:24

Autor:

[david] Yo probé el configureAndWatch hace muchos años y me colgó la máquina. Creaba un thread cada vez que recargaba el fichero. Mi duda es si yo estaba haciendo algo mal o no. De todas formas el javadoc dice:
Read the configuration file configFilename if it exists. Moreover, a thread will be created that will periodically check if configFilename has been created or modified. The period is determined by the delay argument. If a change or file creation is detected, then configFilename is read to configure log4j.

Dejar respuesta

Please enter your comment!
Please enter your name here