IBM Enterprise Records, Versión 5.1.2    

Configuración del archivo log4j.properties

La aplicación IBM® Enterprise Records incluye un archivo log4j.properties de muestra que se puede configurar.

El archivo log4j.properties se encuentra en la carpeta ier_install_path\ RecordsManagerSweep y puede configurarse la conducta del inicio de sesión al especificar valores en el archivo para las siguientes propiedades:

A cada registrador en el archivo log4j.properties se le asigna un nivel. Si no asigna ningún nivel a un registrador, el archivo log4j asigna automáticamente el nivel del registrador padre al registrador sin asignación. De forma predeterminada, se asigna el nivel a un registrador.

Puede configurar el archivo log4j.properties con diferentes valores de registrador, agregador y diseño. El archivo log4j.properties debe estar disponible en la aplicación en el tiempo de ejecución desde la ruta de clase. Puede comentar las entradas en el archivo de muestra al anteponerle a la declaración un símbolo de numeral (#). Las entradas marcadas con el símbolo hash (#) no se ejecutarán en el tiempo de ejecución.

Para abrir el archivo log4j.properties, vaya a la carpeta ier_install_path\RecordsManagerSweep, luego abra el archivo usando el editor de texto.

Establecimiento del registrador y del nivel de registro

En primer lugar, tiene que definir el registrador. Puede disponer de varios registradores para clasificar el tipo de registro que requiera para la aplicación. Para habilitar el registro de todas las clases de com.filenet.rm y sus subpaquetes, especifique el registrador como se indica en la siguiente sentencia:

log4j.logger.com.filenet.rm 

O puede especificar cualquier nombre para el registrador. Por ejemplo, puede llamar al registrador APILOG, como muestra esta sentencia:

log4j.logger.com.filenet.rm=warn, APILOG

Necesita establecer un nivel de registro para establecer el nivel de detalle de los mensajes registrados por log4j en el tiempo de ejecución. log4j admite cinco niveles normales de registro según se muestra en la siguiente tabla:

Tabla 1. Nivel de los mensajes registrados por log4j en tiempo de ejecución
Nivel Descripción
DEBUG Designa los sucesos informativos precisos que resultan más útiles para depurar una aplicación.
INFO Designa mensajes informativos que resaltan el progreso de la aplicación a un nivel general.
WARN Designa situaciones potencialmente perjudiciales.
ERROR Designa sucesos de error que podrían seguir permitiendo la ejecución de la aplicación.
FATAL Designa sucesos graves de error que podría causar que la aplicación deje de funcionar.

Consulte la documentación del archivo log4j en el sitio web de Apache para obtener información sobre niveles de registro personalizados y especiales. De forma predeterminada, la aplicación se inicia en el nivel WARN. Este nivel se puede modificarse a niveles DEBUG, INFO, ERROR, WARN o FATAL en el tiempo de ejecución. También puede incluir varias sentencias de registrador, cada una de ellas para el mismo registrador, pero con distintos niveles (como DEBUG para uno y WARN para otro). Puede comentar una y otra en el archivo de muestra al anteponerle a la declaración un símbolo hash (#). A continuación, cambie, según sea necesario, entre los niveles DEBUG y WARN. Las entradas marcadas con el símbolo hash (#) no se ejecutarán en el tiempo de ejecución. Un registrador sin nivel hereda automáticamente el nivel de su registrador padre. De forma predeterminada, se asigna el nivel WARN al registrador de la API en IBM Enterprise Records.

Definir agregadores

Un registrador se asocia con uno o varios agregadores para permitir que se graben sus mensajes en los soportes de salida. Puede definir distintas clases de agregadores en el archivo log4j.properties que envía la información de registro a la ubicación de salida especificada. La siguiente tabla ofrece una lista de todos los agregadores que se utilizan en el archivo log4j.properties junto con breves descripciones y opciones relacionadas.

Tabla 2. Agregadores, descripciones y fragmentos de código
Agregador Descripción y fragmentos de código
NTEventLogAppender

Se añade al registro de sucesos de Microsoft Windows NT. Este agregador solo se puede instalar y utilizar en un sistema Windows.

log4j.appender.APILOG=org.apache.log4j.nt.NTEventLogAppender
ConsoleAppender

Añade mensajes de registro a la corriente System.out (predeterminada) o System.err mediante un diseño especificado por el usuario.

 log4j.appender.APILOG=org.apache.log4j.ConsoleAppender

Opciones:

  • Threshold=WARN: Este agregador no registrará ningún mensaje cuya prioridad sea inferior a la que se especifica aquí, incluso si la prioridad se ha establecido con un nivel más bajo. Esta configuración es útil para reducir el número de mensajes, por ejemplo, en un registro de archivos mientras se muestran todos los mensajes en la consola.
  • ImmediateFlush=true: el valor predeterminado es true, lo que significa que los mensajes de registro no se almacenan en búfer en absoluto. Si ImmdiateFlush se establece en falso, los últimos sucesos de registro no se graban en los soportes constantes cuando se produce un problema con la aplicación.
FileAppender

Añade mensajes de registro a un archivo.

 log4j.appender.APILOG=org.apache.log4j.FileAppender

Opciones:

  • Threshold=WARN: Este agregador no registrará ningún mensaje cuya prioridad sea inferior a la que se especifica aquí, incluso si la prioridad se ha establecido con un nivel más bajo. Esta configuración es muy útil para reducir el número de mensajes, por ejemplo, en un registro de archivos cuando se muestran todos los mensajes de la consola.
  • ImmediateFlush=true: de forma predeterminada, está establecido como true, lo que significa que los mensajes de registro no se almacenan en búfer en absoluto. Si ImmdiateFlush se establece en falso, los últimos sucesos de registro no se graban en los soportes constantes cuando se produce un problema con la aplicación.
  • File=mylog.txt: nombre de archivo para registrar. Puede utilizar ${alguna_clave_propiedad} (por ejemplo, las propiedades del sistema java.home o user.home) para especificar la vía de acceso.
  • Append=false: de forma predeterminada, está establecido como true, lo que significa que se añadirá al final del archivo. False sobrescribe el archivo al inicio de cada ejecución de programa.
RollingFileAppender

Amplía FileAppender para realizar copia de seguridad de los archivos de registro cuando alcanzan un determinado tamaño.

 log4j.appender.APILOG=org.apache.log4j.RollingFileAppender

Opciones:

  • Threshold=INFO: Este agregador no registra ningún mensaje cuya prioridad sea inferior a la que se especifica aquí, incluso si la prioridad se ha establecido con un nivel más bajo. Esta configuración es muy útil para reducir el número de mensajes, por ejemplo, en un registro de archivos cuando se muestran todos los mensajes de la consola.
  • ImmediateFlush=true: de forma predeterminada, está establecido como true, lo que significa que los mensajes de registro no se almacenan en búfer en absoluto. Si ImmdiateFlush se establece en falso, los últimos sucesos de registro no se graban en los soportes constantes cuando se produce un problema con la aplicación.
  • File=mylog.txt: nombre de archivo para registrar. Puede utilizar ${alguna_clave_propiedad} (por ejemplo, las propiedades del sistema java.home o user.home) para especificar la vía de acceso en la parte frontal.
  • Append=false: de forma predeterminada, está establecido como true, lo que significa que se añadirá al final del archivo. El valor false sobrescribe el archivo al inicio de cada ejecución de programa.
  • MaxFileSize=100 KB: Los sufijos pueden ser KB, MB o GB. Renombre el archivo de registro cuando se alcance este tamaño. El anexo toma un valor booleano que determina si los archivos de salida se sobrescriben (falso) o se anexarán (verdadero). Establecer el valor a falso (por defecto) evita que los archivos crezcan sin límites. Utilice esta configuración en un entorno de desarrollo donde se hacen ejecuciones ocasionales de una sola vez. Si se establece el valor como true, la salida se anexa a un archivo de registro existente en cada ejecución de JVM. Puede limitar el tamaño del archivo de salida al establecer la palabra clave MaxFileSize. Por ejemplo, si configura un archivo de salida, cjapi_log.txt, con MaxFileSize=128 KB y MaxBackupIndex=1, cuando el archivo sobrepasa los 128 KB, su contenido se mueve automáticamente a cjapi_log.txt.1. La escritura continúa en un archivo cjapi_log.txt vacío.
  • MaxBackupIndex=2: mantener un máximo de 2 (por ejemplo) archivos de copia de seguridad. Borra los archivos más antiguos. 0 significa que no se guarda ningún archivo de copia de seguridad.

Definir diseños

Puede definir diferentes diseños en el archivo log4j.properties que especifiquen el formato del mensaje de registro. Puede especificar que los mensajes de registro incluyan la fecha, hora, nombre del módulo, nombre de hebra y otra información. Estos valores de configuración se utilizan en tiempo de ejecución al registrar el mensaje.

La siguiente tabla ofrece una lista de todos los agregadores que se utilizan en el archivo log4j.properties de IBM Enterprise Records log4j.properties junto con breves descripciones y opciones.

Tabla 3. Diseños y descripciones
Diseño Descripción y fragmento de código
SimpleLayout

Imprime el nivel, y a continuación un guion (-) seguido del texto del mensaje de registro.

org.apache.log4j.SimpleLayout
PatternLayout

Da formato a los sucesos de anotaciones según un patrón de conversión especificado. Los patrones de conversión se componen de texto literal y especificadores de conversión. La salida del texto literal es tal cual. Los especificadores de conversión constan del carácter % seguido de un modificador de formato opcional y un carácter de conversión obligatorio. Por ejemplo, %-5p [%t]: %m%n es un patrón de conversión compuesto de un especificador de conversión de prioridades seguido del texto literal " [". Este string está seguido de un especificador de conversión de hebras, seguido del texto literal "]: ". Este string está seguido de un especificador de conversión de mensajes y un separador de líneas dependiente del sistema.

org.apache.log4j.PatternLayout

Opciones:

  • ConversionPattern=%-5p, [%t]:%m%n: cómo dar formato a cada mensaje de registro (qué información incluir).
HTMLLayout

Da formato a la salida como un tabla HTML.

org.apache.log4j.HTMLLayout

Opciones:

  • LocationInfo=true: salida del nombre de archivo Java y el número de línea. El valor predeterminado es false.
  • Title=My app title: establece el código <título> de HTML. El valor predeterminado es Log4J Log Messages.
 

Da formato a la salida como XML.

org.apache.log4j.xml.XMLLayout

Opciones:

  • LocationInfo=true: salida del nombre de archivo Java y el número de línea. El valor predeterminado es false.

El archivo log4j.properties suministrado con IBM Enterprise Records utiliza PatternLayout para el formato del mensaje de registro. En la tabla siguiente se ofrece una lista de patrones de conversión que se pueden declarar en el archivo de configuración junto con sus descripciones breves:

Tabla 4. Patrones de conversión y descripciones
Patrón Descripción
%t Nombre de la hebra que realiza la solicitud de registro
%c Nombre del registrador asociado con la solicitud de registro
%-60c Ajuste por la izquierda el nombre del registrador en un mínimo de 60 espacios
%r Número de milisegundos transcurridos desde el inicio de la aplicación
%p Nivel de la sentencia de anotación
%m Mensaje
%Time Hora a la que se producirán las anotaciones
%d Fecha del suceso de anotaciones
%n Nueva línea

La siguiente sentencia de código muestra cómo activar PatternLayout y especificar un patrón de conversión simple:

log4j.appender.APILOG.layout=org.apache.log4j.PatternLayout
log4j.appender.APILOG.layout.ConversionPattern=%-5p %d {dd MMM yyyy HH:mm:ss,SSS}, -%m, %r, [%M] % n

Por ejemplo:

WARN, 20 Jun 2005 14:48:20,900, -[enter] getObjectStoreXML(ObjectStores), 102042, [setLoggerMessage]
WARN, 20 Jun 2005 14:48:21,100, -[exit] getObjectStoreXML(ObjectStores), 102342, [setLoggerMessage]


Comentarios

Última actualización: Noviembre 2013
configure_rm_logging.htm

© Copyright IBM Corp. 2013