Directorio artículo
La diferencia entre los diversos tipos de registro 1
1.1 Logger y LoggerFactory diferencia
Logger
A partir de log4j
su bolsa. Si Logger.getLogger
la necesidad de un log4j
paquete de frasco, de esta manera sólo puede basarse en log4j
LogFactory
el common-logging
paquete. Si se utiliza LogFactory.getLog
, puede lograrse mediante cualquier interfaz común registrador de registro Como alternativa log4j
, los programas no se ven afectados. apache
El common-logging
paquete es la interfaz de registro común a través de esta capa intermedia puede especificar fácilmente que log en los sistemas finales. Aumentar la flexibilidad del sistema.
Si log4j
no existe, commons-logging
se selecciona por separado otra clase de implementación de registro. Esto asegura que el programa no tiene que usar log4j
los archivos de registro
utilizando los LoggerFactory
motivos para aumentar la flexibilidad:
- En primer lugar,
classpath
encontrar su propio archivo de configuracióncommons-logging.properties
, si lo encuentra, el uso de los cuales se defineLog
la clase de implementación; - Si no puede encontrar el
commons-logging.properties
archivo, a continuación, averiguar si la variable de entorno del sistema definidoorg.apache.commons.logging.Log
, que se utiliza para encontrar la definición de laLog
clase de implementación; - De lo contrario, para ver
classpath
si existe enLog4j
el paquete, si lo encuentra, se utilizará automáticamenteLog4j
como la clase de implementación de registro; - De lo contrario, utilice
JDK
su propia clase de implementación de registro (JDK1.4
después de que la clase de implementación de registro); - De lo contrario, utilice
commons-logging
un registro simple de proporcionar su propia clase de implementaciónSimpleLog
;
1.2 codificador y la diferencia Layout
encoder
: Hay dos principales trabajos: unevent
evento de conversión en un conjunto debyte
matrices, los datos byte de salida para el archivo convertido.encoder
Los componentes en0.9.19
versiones posteriores antes de la introducción vienen. En versiones anteriores,appender
usandolayout
(unevent
evento de conversión como una cadena), a continuación, utilizarjava.io.writer
el objeto para escribir una cadena en un archivo.- Dado que
0.9.19
después de la liberación,Fileappender
y su deseo de utilizar la subclase estáencoder
ya no se utilizalayout
. - El cual
layout
acaba de terminar unevent
evento de conversión en una cadena de esta función. Además,layout
no se puede controlar la cadena de escribir en el archivo.layout
No se puede integrarevent
el evento en un grupo. Yencoder
en comparación con no sólo la conversión se puede realizar de acuerdo con el formato, sino también para escribir datos en un archivo. - ¿Qué
patternLayoutEncoder
es más comúnmente utilizadoencoder
, que contienepatternLayout
la mayor parte de la obra