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.

Conversión de patrón de logback de log4j a logback

Estoy tratando de convertir un archivo de configuración de XML de log4j a logback, este es mi código de log4j que tengo:

<property name="LOG_EXCEPTION_CONVERSION_WORD">%xwEx</property>
<property name="LOG_DATEFORMAT_PATTERN">yyyy-MM-dd HH:mm:ss.SSS</property>
<property name="LOG_LEVEL_PATTERN">%highlight{%5level}{FATAL=white, ERROR=red, WARN=blue, INFO=black, DEBUG=green, TRACE=blue}</property>
<property name="CONSOLE_LOG_PATTERN">%clr{%d{${LOG_DATEFORMAT_PATTERN}} ${LOG_LEVEL_PATTERN} ${sys:PID} --- [%t] %-40.40c{1.} : %m%n${sys:LOG_EXCEPTION_CONVERSION_WORD}}</property>

No entiendo la propiedad LOG_EXCEPTION_CONVERSION_WORD, ¿qué es %xwEx y qué cambia en el patrón al final? Cuando convertí a logback, no lo utilicé, pero siento que me falta algo.

Edit: vi lo que significa en algún lugar, pero no sé cómo tener lo mismo con logback.

xwEx: la palabra de conversión de excepción. El convertidor ExtendedWhitespaceThrowablePatternConverter agrega espacios adicionales alrededor de la traza de la pila.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    La propiedad LOG_EXCEPTION_CONVERSION_WORD en la configuración de log4j dada representa la palabra de conversión utilizada para lanzar una excepción. %xwEx, en particular, es un convertidor de patrón de excepción de espacio en blanco extendido que agrega espacio adicional alrededor de la traza de la pila.

    Al convertir a logback, puedes lograr lo mismo utilizando la palabra de conversión %xEx en el diseño del patrón. %xEx es el convertidor de excepción y tiene una funcionalidad similar a %xwEx.

    Tu configuración convertida en logback sería:

    <property name="LOG_DATEFORMAT_PATTERN" value="yyyy-MM-dd HH:mm:ss.SSS"></property>
    <property name="LOG_LEVEL_PATTERN" value="%highlight{%-5level}{TRACE=blue, DEBUG=green, INFO=black, WARN=blue, ERROR=red, FATAL=white}"></property>
    <property name="CONSOLE_LOG_PATTERN" value="%clr{%d{${LOG_DATEFORMAT_PATTERN}} ${LOG_LEVEL_PATTERN} ${sys:PID} --- [%t] %-40.40c{1.} : %m%n%xEx}"></property>
    

    Aquí, %xEx reemplaza el uso de %sys:LOG_EXCEPTION_CONVERSION_WORD de log4j, y la salida resultante tendrá espacio adicional alrededor de la traza de la pila cuando se lanza una excepción.

Comments are closed.