Log4J.Properties Resumen:
1. Introducción
LOG4J es un proyecto de código abierto de Apache. Al usar LOG4J, podemos controlar el destino de la entrega de información de registro a la consola, los archivos, los componentes GUI, incluso los servidores de socket, NT Event Loggers, Unix Syslog Daemons, etc.; También podemos controlar el formato de salida de cada registro; Al definir el nivel de cada información de registro, podemos controlar el proceso de generación de registros con más cuidado.
LOG4J consta de tres componentes importantes: la prioridad de la información de registro, el destino de salida de la información del registro y el formato de salida de la información de registro. La prioridad de la información de registro es de alta a baja. Error, advertencia, información y depuración, que se utilizan para especificar la importancia de esta información de registro; El destino de salida de la información de registro especifica si el registro se imprimirá en la consola o archivo; y el formato de salida controla el contenido de visualización de la información de registro.
2. Archivo de configuración
De hecho, tampoco puede usar archivos de configuración en absoluto, pero configure el entorno LOG4J en su código. Sin embargo, el uso de archivos de configuración hará que su aplicación sea más flexible.
LOG4J admite dos formatos de archivo de configuración, uno es un archivo de formato XML y el otro es un archivo de formato de propiedades. A continuación presentamos el método de usar el formato de propiedades como archivo de configuración:
Ejemplo:
log4j.rootlogger = info, a1 log4j.appender.a1 = org.apache.log4j.consoleppender log4j.appender.a1.layout = org.apache.log4j.patternlayLayout log4j.appender.a1.layout.conversionPattern = %-4R %-5p [ %t] %37c %
1. Configure el registrador raíz, su sintaxis es:
log4j.rootlogger = [nivel], appendername, appendername, ...
Entre ellos, el nivel es la prioridad del registro, dividido en OFF, FATAL, ERROR, WARN, INFO, DEBUGA, todo o el nivel que define. LOG4J recomienda usar solo cuatro niveles, con prioridad de error alto a bajo, a saber, advertencia, información y depuración. Por el nivel definido aquí, puede controlar los conmutadores al nivel correspondiente de información de registro en la aplicación. Por ejemplo, si el nivel de información se define aquí, no se imprimirá toda la información del registro de nivel de depuración en la aplicación.
Appendername especifica a dónde se produce la información de registro. Puede especificar múltiples destinos de salida al mismo tiempo.
2. Configure el apaudador de destino de salida de información de registro, cuya sintaxis es:
log4j.appender.appendername = totalmente.qualified.name.of.appender.class log4j.appender.appendername.option1 = valor1 ... log4j.appender.appendername.option = valuen
Entre ellos, los apéndices proporcionados por LOG4J son los siguientes:
org.apache.log4j.consoleppender (console), org.apache.log4j.filePeppender (archivo), org.apache.log4j.dailyrollingfileappender (cree un archivo de registro todos los días), org.apache4j.rollingfileAppender (cree un nuevo archivo cuando el tamaño de archivo alcanza el tamaño específico), org.apache.log4j.WriterAppender (envíe información de registro en formato de flujo a cualquier lugar especificado)
(1).
Umbral = Warn: Especifica el nivel más bajo de salida de los mensajes de registro. Inmediatoflush = true: el valor predeterminado es verdadero, lo que significa que todos los mensajes se emitirán de inmediato. Target = System.err: por defecto, es: System.out, especifique la consola de salida
(2). Opciones de Fileappender
Umbral = Warn: Especifica el nivel más bajo de salida de los mensajes de registro.
Inmediatoflush = true: el valor predeterminado es verdadero, lo que significa que todos los mensajes se emitirán de inmediato.
File = mylog.txt: especifica que el mensaje se emite en el archivo mylog.txt.
Append = false: el valor predeterminado es verdadero, lo que significa agregar el mensaje al archivo especificado. Falso significa sobrescribir el mensaje al contenido del archivo especificado.
(3).
Umbral = Warn: Especifica el nivel más bajo de salida de los mensajes de registro.
Inmediatoflush = true: el valor predeterminado es verdadero, lo que significa que todos los mensajes se emitirán de inmediato.
File = mylog.txt: especifica que el mensaje se emite en el archivo mylog.txt.
Append = false: el valor predeterminado es verdadero, lo que significa agregar el mensaje al archivo especificado. Falso significa sobrescribir el mensaje al contenido del archivo especificado.
DatePattern = '.' Aaa yyy-ww: desplácese el archivo una vez por semana, es decir, genere un nuevo archivo cada semana. Por supuesto, también puede especificar mensualmente, semana, día, hora y minuto. Es decir, el formato correspondiente es el siguiente:
1) '.' Yyyy-MM: Monthly
2) '.' Yyyy-WW: semanal
3) '.' Yyyy-MM-DD: todos los días
4) '.' Yyyy-MM-DD-A: dos veces al día
5) '.' Aaa-mm-dd-hh: por hora
6) '.' Aaa yyyy-mm-dd-hh-mm: por minuto
(4).
Umbral = Warn: Especifica el nivel más bajo de salida de los mensajes de registro.
Inmediatoflush = true: el valor predeterminado es verdadero, lo que significa que todos los mensajes se emitirán de inmediato.
File = mylog.txt: especifica que el mensaje se emite en el archivo mylog.txt.
Append = false: el valor predeterminado es verdadero, lo que significa agregar el mensaje al archivo especificado. Falso significa sobrescribir el mensaje al contenido del archivo especificado.
MaxFilesize = 100kb: el sufijo puede ser KB, MB o GB. Cuando el archivo de registro alcanza este tamaño, se desplazará automáticamente y el contenido original se moverá a
Mylog.log.1 archivo.
MaxBackUpIndex = 2: Especifica el número máximo de archivos de desplazamiento que se pueden generar.
3. Configure el diseño de la información de registro, y su sintaxis es:
log4j.appender.appendername.layout = totalmente.qualified.name.of.layout.class
log4j.appender.appendername.layout.option1 = valor1
…
log4j.appender.appendername.layout.option = Valuen
Entre ellos, el diseño proporcionado por log4j es el siguiente:
org.apache.log4j.htmllayout (diseño en forma de tabla html),
org.apache.log4j.PatternLayout (el modo de diseño se puede especificar de manera flexible),
org.apache.log4j.simplelayout (contiene el nivel y la cadena de información de la información del registro),
org.apache.log4j.ttcclayout (incluido el tiempo, el hilo, la categoría, etc. de la generación de registros)
4. Configuración de formato de salida
En el archivo de configuración, puede establecer el formato de salida de registro a través de log4j.appender.a1.layout.conversionPattern.
parámetro:
%P: la prioridad de la información del registro de salida, es decir, depuración, información, advertencia, error, fatal,
%D: La fecha o la hora del punto de registro es la salida. El formato predeterminado es ISO8601. También puede especificar el formato después, como: %d {yyy mmm dd hh: mm: ss, sss}, la salida es similar: 18 de octubre de 2002 22:10:28, 921
%R: El número de milisegundos a la salida del inicio de la aplicación a la salida de esta información de registro
%C: La categoría a la que pertenece la información del registro de salida suele ser el nombre completo de la clase
%t: salida El nombre del subproceso que genera el evento de registro
%L: El evento de registro de salida ocurre en la ubicación de la ocurrencia de%C.%m (%F:%L), incluido el nombre de la categoría, el hilo de ocurrencia y el número de líneas en el código. Ejemplo: TestLog4.Main (TestLog4.Java:10)
%X: la salida de NDC (entorno de diagnóstico anidado) asociado con el hilo actual, especialmente en aplicaciones como Servlets Java con múltiples clientes y subprocesos múltiples.
%%: emisión de un carácter "%"
%F: el nombre del archivo donde se generó el mensaje de registro de salida
%L: número de línea en el código de salida
%m: el mensaje especificado en el código de salida y la información de registro específica generada
%n: emerge una ruptura de línea de retorno de carro, la plataforma de Windows es "/r/n" y la plataforma Unix es "/n" para salir de la información de la línea de registro
Se pueden agregar modificadores entre el % y los caracteres de patrón para controlar su ancho mínimo, el máximo ancho y la alineación del texto. como:
1)%20C: Especifique el nombre de la categoría de salida, el ancho mínimo es 20. Si el nombre de la categoría es inferior a 20, está alineado correctamente de forma predeterminada.
2)%-20c: Especifica el nombre de la categoría de salida. El ancho mínimo es 20. Si el nombre de la categoría es inferior a 20, el signo "-" especifica la alineación de la izquierda.
3)%. 30c: Especifique el nombre de la categoría de salida. El ancho máximo es 30. Si el nombre de la categoría es mayor que 30, los caracteres adicionales de la izquierda se cortarán, pero si tienen menos de 30, no habrá espacios.
4)%20.30c: si el nombre de la categoría es inferior a 20, complete el espacio y alinee el derecho. Si su nombre es de más de 30 caracteres, corte los caracteres que se interceptan desde la izquierda.
3. Cargue el archivo log4j.properties
1. Carga en modo de resorte, configuración y en web.xml:
Spring Carga log4j.properties, que proporciona un log4jconfigListener, que puede cargar el archivo de configuración log4j y la ruta de salida LOG4J desde la ubicación especificada a través de la configuración web.xml. Cabe señalar que
LOG4JConfigListener debe ser antes del oyente de Spring.
web.xml
< <amamname> log4jrefreshinterval </param-name> <amam-value> 10000 </amam-value> </textual-param> <searcher> <searner-class> org.springframework.web.util.log4jconfiglistener </earer-class> </oyear>
2. El archivo de recursos se puede cargar a través de la clase de recursos, y está integrado con el uso.
public class testLog4j {public static void main (String [] args) {PropertyConfigurator.Configure ("d: /code/conf/log4j.properties"); Logger logger = logger.getLogger (testLog4j. Class); logger.debug ("debug"); logger.error ("error"); }}4. Use en el programa
Antes de usar LOG4J en el programa, primero debe importar Commons-Logging.jar y Logging-Log4j-1.2.9.Jar en el classpath y colocar log4j.properties en el directorio raíz SRC. Estará listo para usar a continuación.
1. Obtenga la grabadora
Usando log4j, el primer paso es obtener el registrador de registros, que será responsable de controlar la información de registro. La sintaxis es:
Public Static Logger GetLogger (nombre de cadena),
Obtenga el registrador por nombre especificado y, si es necesario, cree un nuevo registrador para el nombre. El nombre generalmente se nombra en esta clase, como:
static logger logger = logger.getLogger (serverwithlog4j.class.getName ());
Nota: Se recomienda usar la registro de bienes comunes combinados con log4j para registrar
Private static log logger = logFactory.getLog (yourclass.class);
2. Insertar información de registro (información de registro de formato)
Cuando se completen los dos pasos necesarios anteriores, puede insertar fácilmente las declaraciones de registro de diferentes niveles de prioridad en cualquier lugar que desee registrar. La sintaxis es la siguiente:
Logger.debug (mensaje de objeto); Logger.info (mensaje de objeto); Logger.warn (mensaje de objeto); Logger.error (mensaje de objeto);
Por ejemplo:
import org.apache.log4j.*; public class logTest ... {static logger logger = logger.getLogger (logTest.class.getName ()); public static void main (String [] args) ... {// Cargue el archivo log4j.properties a través de PropertyConfigurator. Si no agrega esta oración, hay una carga de resorte PropertyConfigurator.configure ("./srclog4j.properties"); logger.debug ("Debug ..."); logger.info ("Info ..."); logger.warn ("advertir ..."); logger.error ("Error ..."); }}Resumir
Lo anterior es la aplicación Log4J.Properties Configuration and Carging introducida por el editor. Espero que sea útil para todos. Si tiene alguna pregunta, déjame un mensaje y el editor responderá a todos a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!