IBM Enterprise Records, Versão 5.1.2    

Configurando o Arquivo log4j.properties

O aplicativo IBM® Enterprise Records inclui um arquivo log4j.properties de amostra que você pode configurar.

O arquivo log4j.properties está na pasta ier_install_path\ RecordsManagerSweep, e é possível configurar o comportamento de criação de log especificando valores no arquivo para as seguintes propriedades:

A cada criador de logs no arquivo log4j.properties é designado um nível. Se você não designar um nível para um criador de logs, então o log4j automaticamente designa o nível do criador de logs pai para o criador de logs não designado. Por padrão, o nível WARN é designado para um criador de logs.

É possível configurar o arquivo log4j.properties com configurações diferentes de criador de logs, anexador e layout. O arquivo log4j.properties deve estar disponível para o aplicativo no tempo de execução do caminho da classe. É possível comentar entradas no arquivo de amostra prefixando a instrução com um símbolo de sustenido (#). As entradas marcadas com o símbolo de sustenido (#) são ignoradas no tempo de execução.

Para abrir o arquivo log4j.properties, acesse a pasta ier_install_path\RecordsManagerSweep e, em seguida, abra o arquivo usando um editor de texto.

Configurar o Criador de Logs e o Nível de Criação de Log

Primeiro, é preciso configurar o criador de logs. É possível ter um número de criadores de log para classificar o tipo de criação de log necessário para o aplicativo. Para ativar a criação de log para todas as classes de com.filenet.rm e seus subpacotes, especifique o criador de logs conforme mostrado na instrução a seguir:

log4j.logger.com.filenet.rm 

Ou é possível especificar qualquer nome para o criador de logs. Por exemplo, é possível nomear seu criador de logs APILOG, conforme mostrado na instrução a seguir:

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

Você precisa configurar um nível de criação de log para estabelecer o nível de detalhes de mensagens registradas por log4j no tempo de execução. log4j suporta cinco níveis normais de criação de log conforme mostrado na tabela a seguir:

Tabela 1. Nível de Mensagens Registradas por log4j no Tempo de Execução
Nível Descrição
DEBUG Designa eventos informativos com baixa granularidade que são mais úteis para depurar um aplicativo.
INFO Designa mensagens informativas que destacam o progresso do aplicativo no nível de alta granularidade.
WARN Designa situações potencialmente prejudiciais.
ERROR Designa eventos de erro que ainda podem permitir que o aplicativo continue a executar.
FATAL Designa eventos de erro grave que podem fazer o aplicativo parar a execução.

Consulte a documentação do log4j no website do Apache para obter informações sobre níveis de criação de log especiais e customizados. Por padrão, o aplicativo inicia no nível WARN. Esse nível pode ser modificado para DEBUG, INFO, ERROR, WARN ou FATAL no tempo de execução. Também é possível incluir diversas instruções do criador de logs, cada uma para o mesmo criador de logs mas com diferentes níveis (tais como DEBUG para um, WARN para outro). É possível comentar uma ou outra no arquivo de amostra prefixando a instrução com um símbolo de sustenido (#). Em seguida, alternar, conforme necessário, entre os níveis DEBUG e WARN. As entradas marcadas com o símbolo de sustenido (#) são ignoradas no tempo de execução. Um criador de logs que não possui um nível automaticamente herda o nível de seu criador de logs pai. Por padrão, o nível WARN é designado ao criador de logs de API no IBM Enterprise Records.

Configurar Anexadores

Um criador de logs é associado com um ou mais anexadores para permitir que suas mensagens de log sejam gravadas na mídia de saída. É possível configurar diferentes tipos de anexadores no arquivo log4j.properties que envia as informações de log para o local de saída especificado. A tabela a seguir fornece uma lista de todos os anexadores sendo usados no arquivo log4j.properties junto com breves descrições e opções relacionadas.

Tabela 2. Anexadores, Descrições e Fragmentos de Código
Anexador Descrição e Fragmentos de Código
NTEventLogAppender

Anexa ao Log de Eventos do Microsoft Windows NT. Esse anexador pode ser instalado e usado apenas em um sistema Windows.

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

Anexa mensagens de log ao fluxo System.out (o padrão) ou System.err usando um layout especificado pelo usuário.

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

Opções:

  • Threshold=WARN: Este anexador não registrará em log nenhuma mensagem com prioridade menor que a especificada aqui, mesmo se a prioridade estiver configurada para um nível menor. Essa configuração é útil para reduzir o número de mensagens, por exemplo, em um log de arquivo durante a exibição de todas as mensagens no console.
  • ImmediateFlush=true: A configuração padrão é true, o que significa que as mensagens de log não são armazenadas em buffer de forma alguma. Se ImmdiateFlush estiver configurado como false, os últimos poucos eventos de log não serão gravados em mídia constante quando ocorrer um problema com o aplicativo.
FileAppender

Anexa mensagens de log a um arquivo.

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

Opções:

  • Threshold=WARN: Este anexador não registrará em log nenhuma mensagem com prioridade menor que a especificada aqui, mesmo se a prioridade estiver configurada para um nível menor. Essa configuração é útil para reduzir o número de mensagens, por exemplo, em um log de arquivo durante a exibição de todas as mensagens no console.
  • ImmediateFlush=true: Por padrão, é configurada como true, o que significa que as mensagens de log não são armazenadas em buffer de forma alguma. Se ImmdiateFlush estiver configurado como false, os últimos poucos eventos de log não serão gravados em mídia constante quando ocorrer um problema com o aplicativo.
  • File=mylog.txt: Nome do arquivo para registrar. É possível usar ${some_property_key} (por exemplo, propriedades do sistema java.home ou user.home) para especificar o caminho.
  • Append=false: Por padrão é configurado como true, o que significa anexar ao final do arquivo. False sobrescreve o arquivo no início de cada execução do programa.
RollingFileAppender

Estende o FileAppender para fazer backup dos arquivos de log quando eles atingem um determinado tamanho.

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

Opções:

  • Threshold=INFO: Este anexador não registrará em log nenhuma mensagem com prioridade menor que a especificada aqui, mesmo se a prioridade estiver configurada para um valor menor. Essa configuração é útil para reduzir o número de mensagens, por exemplo, em um log de arquivo durante a exibição de todas as mensagens no console.
  • ImmediateFlush=true: Por padrão, é configurada como true, o que significa que as mensagens de log não são armazenadas em buffer de forma alguma. Se ImmdiateFlush estiver configurado como false, os últimos poucos eventos de log não serão gravados em mídia constante quando ocorrer um problema com o aplicativo.
  • File=mylog.txt: Nome do arquivo para registrar. É possível usar ${some_property_key} (por exemplo, propriedades do sistema java.home ou user.home) para especificar o caminho na frente.
  • Append=false: Por padrão, é configurado como true, o que significa anexar ao final do arquivo. false sobrescreve o arquivo no início de cada execução do programa.
  • MaxFileSize=100 KB: Os sufixos podem ser KB, MB ou GB. Rola o arquivo de log após este tamanho ser atingido. Os anexos têm um valor booleano que determina se arquivos de saída são sobrescritos (falso) ou anexados (verdadeiro). A configuração do valor para false (padrão) impede que os arquivos cresçam de forma ilimitada. Use essa configuração em um ambiente de desenvolvimento onde você faça execuções únicas ocasionais. Configurar o valor com true anexa a saída a um arquivo de log existente em cada execução de JVM. É possível limitar o tamanho do arquivo de saída configurando a palavra-chave MaxFileSize. Por exemplo, se você configurar um arquivo de saída, cjapi_log.txt, com MaxFileSize=128 KB e MaxBackupIndex=1, quando o arquivo exceder 128 KB, seu conteúdo será automaticamente movido para cjapi_log.txt.1. A gravação continuará com um arquivo vazio cjapi_log.txt.
  • MaxBackupIndex=2: Mantém um máximo de 2 arquivos de backup (por exemplo). Apaga arquivos mais antigos. 0 significa que nenhum arquivo de backup será mantido.

Configurar Layouts

É possível configurar diferentes layouts no arquivo log4j.properties que especifiquem o formato da mensagem de log. É possível especificar que as mensagens de log incluam data, horário, nome de módulo, nome de encadeamento e outras informações. Estas definições de configuração são usadas no tempo de execução durante o registro da mensagem.

A tabela a seguir fornece uma lista de todos os layouts sendo usados no arquivo log4j.properties do IBM Enterprise Records junto com descrições breves e opções.

Tabela 3. Layouts e Descrições
Layout Descrição e fragmento de código
SimpleLayout

Imprime o Nível, em seguida, um traço (-) seguido pelo texto da mensagem de log.

org.apache.log4j.SimpleLayout
PatternLayout

Formata eventos de criação de log de acordo com um padrão de conversão especificado. Padrões de conversão são compostos de texto literal e especificadores de conversão. O texto literal é a saída no estado em que se encontra. Especificadores de conversão consistem em caracteres % acompanhados por um modificador de formato opcional e um caractere de conversão obrigatório. Por exemplo, %-5p [%t]: %m%n é um padrão de conversão composto por um especificador de conversão de prioridade seguido por um texto literal " [". Essa sequência é seguida por um especificador de conversão de encadeamento, seguido por um texto literal "]: ". Essa sequência é seguida por um especificador de conversão de mensagem e um separador de linha dependente de sistema.

org.apache.log4j.PatternLayout

Opções:

  • ConversionPattern=%-5p, [%t]:%m%n: Como formatar cada mensagem de log (quais informações incluir).
HTMLLayout

Formata a saída como uma tabela HTML.

org.apache.log4j.HTMLLayout

Opções:

  • LocationInfo=true: Exibe o nome do arquivo Java e o número da linha. A configuração padrão é false.
  • Title=My app title: Configurar a tag <title> do HTML. A configuração padrão é Log4J Log Messages.
 

Formata a saída como XML.

org.apache.log4j.xml.XMLLayout

Opções:

  • LocationInfo=true: Exibe o nome do arquivo Java e o número da linha. A configuração padrão é false.

O arquivo log4j.properties fornecido com o IBM Enterprise Records usa PatternLayout para o formato da mensagem de log. A tabela a seguir fornece uma lista de padrões de conversão que podem ser declarados no arquivo de configuração junto com suas descrições breves:

Tabela 4. Padrões de Conversão e Descrições
Padrão Descrição
%t Nome do encadeamento fazendo a solicitação de log
%c Nome do criador de logs associado com a solicitação de log
%-60c Alinhe o nome do criador de logs à esquerda dentro do mínimo de 60 espaços
%r Número de milissegundos decorridos desde o início do aplicativo
%p Nível da instrução de log
%m Mensagem
%Time Horário no qual a criação de log ocorre
%d Data do evento de criação de log
%n Nova linha

A seguinte instrução de código mostra como ativar PatternLayout e especifica um padrão de conversão simples:

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 exemplo:

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]


Feedback

Última atualização: novembro de 2013
configure_rm_logging.htm

© Copyright IBM Corporation 2013