Escolar Documentos
Profissional Documentos
Cultura Documentos
História do log4j:
Começou no início de 1996 como API de rastreamento para o projeto
EU SEMPER (Secure Electronic Marketplace for Europe).
Depois de inúmeras melhorias e várias encarnações, a API inicial
evoluiu para se tornar log4j, um pacote de registro popular para Java.
Foi originalmente escrito por Ceki Gülcü e faz parte do projeto Apache
Logging Services da Apache Software Foundation. Log4j é um dos
vários frameworks de logging Java.
Recursos do log4j
5 - Filtros melhorados
7 - Suporte para várias APIs: O Log4j 2 pode ser usado com aplicativos que
usam as APIs Log4j 2, Log4j 1.2, SLF4J, o Commons Logging e
java.util.logging (JUL).
10 - Marcadores
Instalação:
A versão mais recente do log4j, incluindo código completo, arquivos de classe
e documentação, pode ser encontrada em http://logging.apache.org/log4j/.
Passo 1
Descompacte e descompacte o arquivo baixado no diretório / usr / local /
da seguinte maneira:
$ gunzip apache-log4j-1.2.15.tar.gz
$ tar -xvf apache-log4j-1.2.15.tar
apache-log4j-1.2.15/tests/input/
apache-log4j-1.2.15/tests/input/xml/
apache-log4j-1.2.15/tests/src/
apache-log4j-1.2.15/tests/src/java/
apache-log4j-1.2.15/tests/src/java/org/
.......................................
Passo 2
Esta etapa é opcional e depende de quais recursos você usará a partir do
framework log4j. Se você já tem os seguintes pacotes instalados em sua
máquina, então está tudo bem, caso contrário você precisa instalá-los para
fazer o log4j funcionar.
Etapa 3
Agora você precisa configurar as variáveis CLASSPATH e PATH
apropriadamente. Aqui vamos defini-lo apenas para o arquivo log4j.xxxjar.
$ pwd
/usr/local/apache-log4j-1.2.15
$ export CLASSPATH=$CLASSPATH:/usr/local/apache-log4j-1.2.15/log4j-1.2.15.jar
$ export PATH=$PATH:/usr/local/apache-log4j-1.2.15/
Arquitetura:
A API log4j segue uma arquitetura em camadas, onde cada camada fornece
objetos diferentes para executar tarefas diferentes. Essa arquitetura em
camadas torna o design flexível e fácil de estender no futuro.
Objetos principais:
Objetos principais incluem os seguintes tipos de objetos -
Objeto Logger
A camada de nível superior é o Logger, que fornece o objeto Logger. O objeto
Logger é responsável por capturar as informações de registro e elas são
armazenadas em uma hierarquia de namespace.
Objeto de layout
A camada de layout fornece objetos que são usados para formatar
informações de registro em diferentes estilos. Ele fornece suporte a objetos
anexadores antes de publicar informações de log.
Objeto do Appender
Essa é uma camada de nível inferior que fornece objetos do Appender. O
objeto appender é responsável por publicar informações de log para vários
destinos preferenciais, como banco de dados, arquivo, console, Syslog UNIX
etc.
Objetos de suporte:
Existem outros objetos importantes no framework log4j que desempenham um
papel vital na estrutura de logging:
Objeto de level
O objeto Level define a granularidade e a prioridade de qualquer informação
de log. Existem sete níveis de log definidos na API: OFF, DEBUG, INFO,
ERROR, WARN, FATAL e ALL.
Objeto de filter
O objeto Filter é usado para analisar as informações de registro e tomar outras
decisões sobre se essas informações devem ser registradas ou não.
ObjectRenderer
O objeto ObjectRenderer é especializado em fornecer uma representação de
String de diferentes objetos passados para a estrutura de criação de log. Esse
objeto é usado pelos objetos Layout para preparar as informações finais de
criação de log.
LogManager
O objeto LogManager gerencia a estrutura de registro. Ele é responsável por
ler os parâmetros de configuração inicial de um arquivo de configuração do
sistema ou de uma classe de configuração.
O diagrama a seguir mostra os componentes de uma estrutura log4J
Configuração:
Configurar log4j envolve designar o Level, definir Appender e especificar
objetos Layout em um arquivo de configuração.
log4j.properties Exemplo
Usando a sintaxe acima, definimos o seguinte no arquivo log4j.properties:
Nome Descrição
Layout
Usamos o PatternLayout com nosso appender. Todas as opções possíveis
são:
DateLayout
HTMLLayout
PatternLayout
SimpleLayout
XMLLayout
import org.apache.log4j.Logger;
import java.io.*;
import java.sql.SQLException;
import java.util.*;
}
Compile e execute
Aqui estão os passos para compilar e executar o programa acima
mencionado. Certifique-se de ter
definido PATH e CLASSPATH adequadamente antes de prosseguir para a
compilação e execução.
Logging Methods
A classe Logger fornece uma variedade de métodos para lidar com atividades
de registro. A classe Logger não permite instanciar uma nova instância do
Agente de Log, mas fornece dois métodos estáticos para obter um objeto
Logger
Métodos e Descrição
Logging Levels
Nível Descrição
import org.apache.log4j.*;
log.setLevel(Level.WARN);
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
import org.apache.log4j.*;
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
Warn Message!
Error Message!
Fatal Message!
Formatação de Log
O Apache log4j fornece vários objetos Layout , cada um dos quais pode
formatar dados de registro de acordo com vários layouts. Também é possível
criar um objeto Layout que formata os dados de registro de uma maneira
específica do aplicativo.
Os tipos de layout
A classe de nível superior na hierarquia é a classe
abstrata org.apache.log4j.Layout. Esta é a classe base para todas as outras
classes de Layout na API log4j.
DateLayout
HTMLLayout
PatternLayout.
SimpleLayout
XMLLayout
Os métodos de layout
Essa classe fornece uma implementação esquelética de todas as operações
comuns em todos os outros objetos Layout e declara dois métodos abstratos.
Métodos e Descrição
Ele retorna o tipo de conteúdo usado pelos objetos Layout. A classe base
retorna text / plain como o tipo de conteúdo padrão.