com.mhavila.cookbook.log
Class RecipeCommonsLogging
java.lang.Object
com.mhavila.cookbook.log.RecipeCommonsLogging
public class RecipeCommonsLogging
- extends Object
- Receita:
- Gerar informação de log usando a API Jakarta Commons Logging (JCL),
uma abstração de interfaces de log leve e independente.
JCL provê implementações da interface
Log com casca (wrapper)
para diversos mecanismos de log, incluindo Jakarta Log4J, Java Logging do JDK 1.4+
e Avalon LogKit. Sua interface é similar às de Log4J e LogKit.
Instalação:
- Faça o download da versão mais recente do Apache Commons Logging.
A numeração da versão é referenciada aqui como VERSAO.
Esta receita foi testada com a versão 1.0.4 da commons-logging.
- Descompacte o pacote
commons-logging-VERSAO.tar.gz
ou commons-logging-VERSAO.zip.
Dentro do destino que você escolher no disco, será criada uma pasta
commons-logging-VERSAO.
A localização desta pasta criada é refenciada aqui como LOGGING_HOME.
- Em seu projeto, copie e adicione ao CLASSPATH o arquivo
LOGGING_HOME/commons-logging.jar.
- Adicione aos imports das classes que usarão JCL as seguintes classes:
org.apache.commons.logging.Log e org.apache.commons.logging.LogFactory.
- Configuração -
LogFactory:
- A classe
LogFactory, implementação padrão do pacote JCL para fábrica de instâncias
de Log, utiliza um processo de reconhecimento automático para determinar qual
implementação de Log deve ser usada. O processo termina no primeiro passo
que for bem sucedido, nesta ordem:
- Procura o atributo de configuração
org.apache.commons.logging.Log.
- Procura a propriedade de sistema
org.apache.commons.logging.Log.
- Se o sistema Log4J estiver disponível no classpath da aplicação,
usa a classe casca correspondente
Log4JLogger.
- Se a aplicação está sendo executada em um sistema com JDK 1.4 ou superior,
usa a classe casca correspondente para a API java.util.logging
Jdk14Logger.
- Como última alternativa, recorre à casca de log simples padrão
SimpleLog.
Entrada (origem/geração/escrita) - Log:
- 6 níveis de prioridade do log: (maior, mais sério)
FATAL > ERROR > WARN > INFO > DEBUG
> TRACE (menor, menos importante).
- Métodos de escrita de log por nível de prioridade,
recebendo uma mensagem (
Object) e, opcionalmente,
também uma exceção (Throwable) para incluir sua pilha de trace:
fatal(...),
error(...),
warn(...),
info(...),
debug(...),
trace(...).
- Métodos para testar níveis de log em uso, antes de gerar log com parâmetros onerosos:
isFatalEnabled(), ...,
isTraceEnabled().
- Saída (destino/gravação/envio/exibição), Formatação
e outras Opções:
- Toda configuração de saída, formatação e outras opções deve ser feita por meios
específicos de configuração suportados pelo mecanismo de log utilizado, tipicamente
com um arquivo de configuração, atributos de execução ou propriedades de sistema.
- Author:
- Márcio d'Ávila (www.mhavila.com)
- See Also:
Log,
LogFactory,
RecipeLog4j,
RecipeJavaLogging
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RecipeCommonsLogging
public RecipeCommonsLogging()
main
public static void main(String[] args)