Herramientas de usuario

Herramientas del sitio


fw:log4j

¡Esta es una revisión vieja del documento!


log4j

Herramienta para el registro de datos\sucesos en el código (logs) de forma secuencial en Java.

Loggers, appenders y layouts

Loggers

Permiten activar y desactivar ciertas sentencias de log. Se gestionan en una relación padre-hijo a partir de un nombre separado por puntos, donde el padre es el elemento anterior al otro. Por ejemplo com.foo es padre de com.foo.bar.
Siempre existirá el logger root (al cual no puede accederse por el nombre). Para utilizarlo llamaremos al método estático Logger.getRootLogger (para llamar a otro utilizaremos Logger.getLogger).

Los métodos que utilizaremos generalmente serán:

  • public void [nivel] (Object message), pudiendo ser nivel debug, info, warn, error, fatal o log; son métodos que imprimen en un nivel concreto de un logger. Por ejemplo si objLog es un objeto de la clase Logger llamando a su método objLog.info(“…”) enviará una petición de loggin a nivel de INFO.
  • public void log(Level l, Object message), método genérico para imprimir a partir de un nivel indicado.

Los niveles que pueden asignarse a un logger son DEBUG, INFO, WARN, ERROR y FATAL definidos en la clase org.apache.log4j.Level. Si no se llega a asignar un nivel a un logger entonces lo heredará de su antecesor.

En el siguiente ejemplo únicamente root tiene un nivel asignado (Proot) y este es heredado.

Nombre Nivel Definitivo
root Proot Proot
X ninguno Proot
X.Y ninguno Proot
X.Y.Z ninguno Proot

En este todos los loggers tienen un nivel, no existe herencia:

Nombre Nivel Definitivo
root Proot Proot
X Px Px
X.Y Pxy Pxy
X.Y.Z Pxyz Pxyz

En el siguiente tanto X como X.Y.Z no utilizan la herencia porque tienen un nivel asignado. X.Y hereda de X.

Nombre Nivel Definitivo
root Proot Proot
X Px Px
X.Y ninguno Px
X.Y.Z Pxyz Pxyz

Appenders

Layouts

fw/log4j.1223922899.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)