IBM Enterprise Records, Versão 5.1.2    

Configurar o ficheiro log4j.properties

A aplicação IBM® Enterprise Records inclui um ficheiro log4j.properties de exemplo que pode configurar.

O ficheiro log4j.properties está localizado na pasta ier_install_path\RecordsManagerSweep e pode configurar o comportamento da criação de registo, especificando valores no ficheiro para as seguintes propriedades:

É atribuído um nível a cada logger no ficheiro log4j.properties. Se não atribuir um nível a um logger, o ficheiro log4j atribui automaticamente o nível do logger ascendente ao logger sem atribuição. Por predefinição, é atribuído o nível WARN ao logger.

Pode configurar o ficheiro log4j.properties com definições diferentes de logger, appender e layout. O ficheiro log4j.properties tem de estar disponível para a aplicação durante a execução a partir do caminho da classe. Pode excluir entradas no ficheiro de exemplo, adicionando um prefixo na instrução com um símbolo de cardinal (#). As entradas assinaladas com o símbolo de cardinal (#) são ignoradas durante a execução.

Para abrir o ficheiro log4j.properties, aceda à pasta ier_install_path\RecordsManagerSweep e, em seguida, abra o ficheiro utilizando um editor de texto.

Definir o nível de logger e de criação de registo

É necessário definir primeiro o logger. Pode ter vários loggers para classificar o tipo de criação de registo necessário para a aplicação. Para activar a criação de registos para todas as classes de com.filenet.rm e dos respectivos sub-pacotes, especifique o logger conforme indicado na instrução seguinte:

log4j.logger.com.filenet.rm 

Em alternativa, pode especificar qualquer nome para o logger. Por exemplo, pode atribuir o nome APILOG para o logger conforme demonstrado na instrução seguinte:

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

É necessário definir um nível de criação de registo para estabelecer o nível de detalhes das mensagens gravadas pelo ficheiro log4j durante a execução. O ficheiro log4j suporta cinco níveis normais de registo, conforme apresentado na tabela abaixo:

Tabela 1. Nível das mensagens gravadas pelo log4j durante a execução
Nível Descrição
DEBUG Designa eventos informativos de granularidade fina, muito úteis para depurar aplicações.
INFO Designa mensagens informativas que destacam o progresso da aplicação a nível de granularidade grossa.
WARN Designa situações potencialmente prejudiciais.
ERROR Designa eventos de erro que podem continuar a permitir que a aplicação permaneça em execução.
FATAL Designa vários eventos de erro grave que podem fazer com que a aplicação deixe de ser executada.

Consulte a documentação sobre o ficheiro log4j no sítio da Web da Apache, para obter informações sobre níveis de registo especiais e personalizados. Por predefinição, a aplicação é iniciada no nível WARN. Este nível pode ser modificado para os níveis DEBUG, INFO, ERROR, WARN ou FATAL durante a execução. Pode também incluir várias instruções de logger, cada uma para o mesmo logger mas com níveis diferentes (tais como DEBUG para um e WARN para outro). Pode excluir um deles no ficheiro de exemplo, adicionando um prefixo na instrução com um símbolo de cardinal (#). Em seguida, alterne entre os níveis DEBUG e WARN, conforme necessário. As entradas assinaladas com o símbolo de cardinal (#) são ignoradas durante a execução. Um logger sem um nível atribuído herda automaticamente o nível do logger ascendente. Por predefinição, o nível WARN é atribuído ao logger da API no IBM Enterprise Records.

Definir appenders

Um logger é associado a um ou mais appenders para permitir que as respectivas mensagens de registo sejam gravadas no suporte de saída. Pode definir diferentes tipos de appenders no ficheiro log4j.properties que envia a informação do registo para a localização de saída especificada. A tabela seguinte indica uma lista de todos os appenders utilizados no ficheiro log4j.properties juntamente com descrições resumidas e opções relacionadas.

Tabela 2. Appenders, descrições e fragmentos de código
Appender Descrição e fragmentos de código
NTEventLogAppender

Anexo ao registo de eventos do Microsoft Windows NT. Este appender apenas pode ser instalado e utilizado num sistema Windows.

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

Anexa mensagens do registo à sequência System.out (a predefinição) ou System.err utilizando um esquema especificado pelo utilizador.

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

Opções:

  • Threshold=WARN: Este appender não regista quaisquer mensagens com prioridade inferior à especificada aqui, mesmo que a prioridade esteja definida como um nível inferior. Esta definição é útil para reduzir o número de mensagens. Por exemplo, num registo de ficheiro ao apresentar todas as mensagens na consola.
  • ImmediateFlush=true: A predefinição é true, o que significa que as mensagens do registo não são colocadas em memória tampão. Se ImmdiateFlush estiver definido como false, o últimos eventos do registo não são gravados no suporte constante quando o problema ocorre na aplicação.
FileAppender

Anexa mensagens do registo a um ficheiro.

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

Opções:

  • Threshold=WARN: Este appender não regista quaisquer mensagens com prioridade inferior à especificada aqui, mesmo que a prioridade esteja definida como um nível inferior. Esta definição é útil para reduzir o número de mensagens. Por exemplo, num registo de ficheiro ao apresentar todas as mensagens na consola.
  • ImmediateFlush=true: A predefinição é true, o que significa que as mensagens não colocadas em memória tampão. Se ImmdiateFlush estiver definido como false, o últimos eventos do registo não são gravados no suporte constante quando o problema ocorre na aplicação.
  • File=mylog.txt: O nome do ficheiro do registo. Pode utilizar ${some_property_key} (pro exemplo, propriedades do sistema java.home ou user.home) para especificar o caminho.
  • Append=false: A predefinição é true, o que significa que é anexo ao fim do ficheiro. O valor false substitui o ficheiro no início de cada execução do programa.
RollingFileAppender

Expande FileAppender para criar uma cópia de segurança dos ficheiros de registo quando estes atingem um determinado tamanho.

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

Opções:

  • Threshold=INFO: Este appender não regista quaisquer mensagens com prioridade inferior à especificada aqui, mesmo que a prioridade esteja definida como inferior. Esta definição é útil para reduzir o número de mensagens. Por exemplo, num registo de ficheiro ao apresentar todas as mensagens na consola.
  • ImmediateFlush=true: A predefinição é true, o que significa que as mensagens não colocadas em memória tampão. Se ImmdiateFlush estiver definido como false, o últimos eventos do registo não são gravados no suporte constante quando o problema ocorre na aplicação.
  • File=mylog.txt: O nome do ficheiro do registo. Pode utilizar ${some_property_key} (por exemplo, propriedades do sistema java.home ou user.home) para especificar o caminho seguinte.
  • Append=false: A predefinição é true, o que significa que é anexo ao fim do ficheiro. O valor false substitui o ficheiro no início de cada execução do programa.
  • MaxFileSize=100 KB: Os sufixos podem ser KB, MB ou GB. Desloque o ficheiro de registo após este tamanho ser atingido. O anexo utiliza um valor booleano que determina se os ficheiros de saída são substituídos (false) ou anexados (true). Definir o valor para false (predefinição) impede o crescimento ilimitado dos ficheiros. Utilize esta definição num ambiente de desenvolvimento onde efectue execuções únicas ocasionais, Definir o valor como true anexa a saída a um ficheiro de registo existente em cada execução de JVM. Pode limitar o tamanho do ficheiro de saída definindo a palavra-chave MaxFileSize. Por exemplo, se configurar um ficheiro de saída, cjapi_log.txt, com MaxFileSize=128 KB e MaxBackupIndex=1, quando o ficheiro exceder 128 KB, os conteúdos são movidos automaticamente para cjapi_log.txt.1. A gravação continua a ser efectuada num ficheiro cjapi_log.txt vazio.
  • MaxBackupIndex=2: Mantém um máximo de 2 (por exemplo) ficheiros de cópia de segurança. Apaga os ficheiros mais antigos. 0 significa que não são mantidos quaisquer ficheiros de cópia de segurança.

Definir esquemas

Pode definir diferentes esquemas no ficheiro log4j.properties que especificam o formato da mensagem do registo. Pode especificar que as mensagens do registo incluem a data, hora, nome do módulo e nome da sessão, entre outras informações. Estas definições de configuração são utilizadas durante a execução ao criar o registo da mensagem.

A tabela seguinte fornece uma lista de todas as estruturas utilizadas no ficheiro log4j.properties do IBM Enterprise Records juntamente com descrições resumidas e opções.

Tabela 3. Esquemas e descrições
Esquema Descrição e fragmento de código
SimpleLayout

Imprime o nível, em seguida um traço (-) seguido pelo texto da mensagem do registo.

org.apache.log4j.SimpleLayout
PatternLayout

Formata os eventos de criação de registos de acordo com um padrão de conversão especificado. Os padrões de conversão são constituídos por texto literal e especificadores de conversão. O texto literal é emitido tal como está. Os especificadores de conversão são constituídos pelo carácter % seguido por um modificador de formato opcional e por um carácter de conversão obrigatório. Por exemplo, %-5p [%t]: %m%n é um padrão de conversão constituído por um especificador de conversão de prioridade, seguido pelo texto literal " [". Esta cadeia é seguida por um especificador de conversão de sessão, seguido pelo texto literal text "]: ". Esta cadeia é seguida por um especificador de conversão de mensagem e um separador de linha dependente do sistema.

org.apache.log4j.PatternLayout

Opções:

  • ConversionPattern=%-5p, [%t]:%m%n: Como formatar cada mensagem de registo (que informação incluir).
HTMLLayout

Formata a saída como tabela HTML.

org.apache.log4j.HTMLLayout

Opções:

  • LocationInfo=true: Emite o nome do ficheiro de Java e o número de linha. A predefinição é false.
  • Title=My app title: Define o controlo <title> de HTML. A predefinição é Log4J Log Messages.
 

Formata a saída como XML.

org.apache.log4j.xml.XMLLayout

Opções:

  • LocationInfo=true: Emite o nome do ficheiro de Java e o número de linha. A predefinição é false.

O ficheiro log4j.properties fornecido com o IBM Enterprise Records utiliza o formato de mensagem de registo PatternLayout. A tabela seguinte indica uma lista dos padrões de conversão que podem ser declarados no ficheiro de configuração juntamente com descrições resumidas.

Tabela 4. Padrões de conversão e descrições
Padrão Descrição
%t O nome da sessão que cria o pedido de registo
%c O nome do logger associado ao pedido de registo
%-60c Alinhar à esquerda o nome do logger com um mínimo de 60 espaços
%r O número de milissegundos decorridos desde o início da aplicação
%p O nível da instrução do registo
%m Mensagem
%Time A hora em que o registo ocorre
%d A data do evento de criação de registo
%n Nova linha

A instrução de código seguinte mostra como activar PatternLayout e especificar 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]


Comentários

Última actualização: Novembro de 2013
configure_rm_logging.htm

© Copyright IBM Corp. 2013