log4j - Visão geral
log4j é uma estrutura de registro (APIs) confiável, rápida e flexível escrita em Java, que é distribuída sob a licença de software Apache.
log4j foi portado para as linguagens C, C ++, C #, Perl, Python, Ruby e Eiffel.
log4j é altamente configurável por meio de arquivos de configuração externos em tempo de execução. Ele vê o processo de registro em termos de níveis de prioridade e oferece mecanismos para direcionar as informações de registro para uma grande variedade de destinos, como banco de dados, arquivo, console, UNIX Syslog, etc.
log4j tem três componentes principais:
loggers: Responsável por capturar informações de registro.
appenders: Responsável por publicar informações de registro em vários destinos preferenciais.
layouts: Responsável por formatar informações de registro em diferentes estilos.
História do log4j
Iniciado no início de 1996 como API de rastreamento para o projeto EU SEMPER (Secure Electronic Marketplace for Europe).
Após incontáveis aprimoramentos e várias encarnações, a API inicial evoluiu para se tornar log4j, um pacote de registro popular para Java.
O pacote é distribuído sob a Licença de Software Apache, uma licença de código aberto completa certificada pela iniciativa de código aberto.
A versão mais recente do log4j, incluindo seu código-fonte completo, arquivos de classe e documentação pode ser encontrada em http://logging.apache.org/log4j/.
Recursos log4j
É thread-safe.
Ele é otimizado para velocidade.
É baseado em uma hierarquia de logger nomeada.
Ele suporta vários appenders de saída por logger.
Suporta internacionalização.
Não se restringe a um conjunto predefinido de instalações.
O comportamento de registro pode ser definido em tempo de execução usando um arquivo de configuração.
Ele é projetado para lidar com exceções Java desde o início.
Ele usa vários níveis, a saber, ALL, TRACE, DEBUG, INFO, WARN, ERROR e FATAL.
O formato da saída do log pode ser facilmente alterado estendendo a classe Layout .
O destino da saída do log, bem como a estratégia de gravação, podem ser alterados por implementações da interface do Appender.
É uma parada de falha. No entanto, embora certamente se esforce para garantir a entrega, log4j não garante que cada instrução de log será entregue ao seu destino.
Prós e contras do registro
O registro é um componente importante do desenvolvimento de software. Um código de registro bem escrito oferece depuração rápida, fácil manutenção e armazenamento estruturado das informações de tempo de execução de um aplicativo.
Log também tem suas desvantagens. Isso pode tornar um aplicativo lento. Se muito prolixo, pode causar cegueira de rolagem. Para aliviar essas preocupações, o log4j foi projetado para ser confiável, rápido e extensível.
Como o registro raramente é o foco principal de um aplicativo, a API log4j se esforça para ser simples de entender e usar.