Al usar Spring Framework, podemos configurar fácilmente LOG4J para la administración de registros.
Spring 5.0 ha sido lanzado por un tiempo y recientemente actualizó el proyecto de Spring 4.3 a Spring 5.0. La clase org.springframework.web.util.log4jconfiglistener utilizada por Spring 4.3 Integray Log4j se ha eliminado en la versión Spring 5.0, y LOG4J versión 1.x ya no se actualiza. Actualizamos log4j-1.x a log4j-2.x
Primero introduzca los tres paquetes jar de log4j 2
Agregue el archivo web.xml en el proyecto. Esta configuración permite que el archivo de registro se emita al directorio web usando $ {web: rootdir}
<cuetute-param> <amamname> log4jContextName </param-name> <amam-value> myApplication </param-value> </context-param>
LOG4J 2 admite cuatro métodos de configuración: JSON, YAML, Propiedades y XML. Utilizamos propiedades para configurar LOG4J2 de acuerdo con las reglas antiguas.
Agregue log4j2.Properties File en el directorio SRC del proyecto. Spring 5.0 cargará automáticamente el archivo de forma predeterminada
# Establezca el nivel de registro dentro de LOG4J2, valores válidos: traza, depuración, información, advertencia, error, fatal. Solo válido para eventos en log4j en sí, no se puede establecer. Cuando se establece en Trace, verá varios estados de salida detallados dentro de log4j2 status = fatal# Configuration Name = PropertiesConfigAppenders = Console, i# Tipo de consolla de registro de salida de registro Appender.console.Type = Console# Salida Fuente de salida Appender.console = %M %Nappender.Console.Target = System_out# Log outed Source appender.i.type = rollingfile# El nombre de la fuente de salida de desplazamiento actual se puede llamar en el elemento de configuración del registrador Appender.i.name = InforOllingFile# El nombre del archivo del archivo de registro que actualmente se está operando Appender.i.Filename = = $ {web: rootdir} /webinf/log/info.log# El formato de nombre de archivo del archivo de registro archivado, donde `%d {yyyyy-mm-dd-hh}` se usa para llenar automáticamente la fecha appender.i.filePattern = $ {Web: rootdir}/webinf/log/info_ {mm-dd} ° ° Tipo de diseño de fuente de salida de registro Appender.i.Layout.Type = PatternLayout# Scroll Record Template de salida Appender.i.layout.pattern = %-d {yyyyy-mm-dd hh: mm: ss} [ %p] [ %c] %m %n# especifica la política de almacenamiento para registrar archivos. Esta estrategia completa principalmente el trabajo de almacenamiento de archivos de registro periódicos Appender.i.policies.type = Políticas# Cortar los registros basados en el tiempo Appender.i.policies.time.type = TimeBasedTriggeringPolicy# El intervalo de corte es de 1 mes, es decir, los archivos de registro se llevan a cabo una vez al día. Si la regla de cambio de nombre de archivos configurada en FilePattern es $ {Web: rootdir}/web-inf/log/info_%d {yyyyy-mm-dd hh-mm}-%i, la granularidad de tiempo mínima es mm, es decir, minutos, el tamaño especificado por tiempo de tiempo baseadourgpoly es 1, y combinado para generar un nuevo archivo cada 2 minutos. Si se cambia a %d {aaa yyyy-mm-dd hh}, la granularidad mínima es horas, se genera un archivo cada 2 horas. Appender.i.policies.time.interval = 1# Corrija el rango de tiempo, el recuento comienza en 0. Si modulado = verdadero, el tiempo de sellado se compensará con 0 puntos como el límite. Por ejemplo, modulado = true, interval = 4hours, luego suponiendo que la última vez que se bloqueó el registro fue 03:00, la próxima vez que se bloqueó el registro fue 04:00, y la hora posterior appender.i.policies.time.modulate = true# activación de la política basada en el volumen del archivo de log El valor especificado por tamaño, disparar rollingappender.i.policies.size.size = 50m# Política de sobrescribencia para el almacenamiento de archivos (rolloverstrategy) appender.i.strategy.type = defaulTrolloverStratategy# número de archivos divididos (sellados) se generan appender.i.strategy <Warn <Error <fatal <offrootlogger.level = debgurotlogger.appenderref.i.ref = inforollingFileroOtlogger.appenderref.i.level = info# Fuente de salida de asociado con el nombre consultora nota de consolino roadlogger.appenderref.consolelog.level = debugDespués de completar la configuración, escriba una prueba de clase
importar org.apache.logging.log4j.logmanager; import org.apache.logging.log4j.logger; public class testClass {public static final logger = logManager.getLogger (testClass.class); public void test () {logger.info ("información ..."); }}Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.