es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Migración de log4j a log4j2 – configuración del archivo de propiedades incluyendo categorías.

Tengo una aplicación Java que está utilizando log4j configurado de la siguiente manera.

# Establecer el nivel del logger raíz en DEBUG y su único appender en A1.
log4j.rootLogger=DEBUG, A1
log4j.debug=false

# A1 se establece como un ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c %x - %m%n
#log4j.appender.A1.threshold=DEBUG

# DEBUG, INFO, WARN, ERROR, FATAL
log4j.category.com.myorganization.MyClass=INFO
log4j.category.com.myorganization.MyOtherClass=WARN

Me gustaría migrar a log4j2 con la misma configuración que se muestra arriba. Aunque he encontrado mucha documentación, especialmente en https://stackoverflow.com/questions/35900555/migrating-from-log4j-to-log4j2-properties-file-configuration, ninguno de los ejemplos contiene la configuración de categoría como la tengo en las últimas dos líneas.

¿Podría alguien ayudarme a cómo sería mi archivo log4j2.properties con la misma configuración que se muestra arriba?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Así es como se vería el archivo log4j2.properties con la misma configuración que se muestra arriba:

    # Establecer el nivel del registrador raíz en DEBUG y su único captador en A1.
    status = error
    name = PropertiesConfig
    
    filters = thresholdFilter
    thresholdFilter.type = ThresholdFilter
    thresholdFilter.level = debug
    
    # Definir el captador de consola
    appenders = console
    appender.console.type = Console
    appender.console.name = ConsoleAppender
    appender.console.layout.type = PatternLayout
    appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c %x - %m%n
    
    # Establecer el nivel del registrador raíz en DEBUG y su único captador en A1.
    rootLogger.level = debug
    rootLogger.appenderRefs = stdout
    rootLogger.appenderRef.stdout.ref = ConsoleAppender
    
    # DEBUG, INFO, WARN, ERROR, FATAL
    loggers = com.myorganization.MyClass, com.myorganization.MyOtherClass
    
    logger.com.myorganization.MyClass.name = com.myorganization.MyClass
    logger.com.myorganization.MyClass.level = info
    
    logger.com.myorganization.MyOtherClass.name = com.myorganization.MyOtherClass
    logger.com.myorganization.MyOtherClass.level = warn
    

    Este archivo log4j2.properties incluye la misma configuración de registrador raíz y captador de consola que el archivo log4j.properties, pero en formato log4j2. También incluye la misma configuración de categoría para com.myorganization.MyClass y com.myorganization.MyOtherClass utilizando el atributo logger.

Comments are closed.