Las propiedades de la versión 1 a 2.17.1 del puente Log4J no se resuelven.
Estoy intentando utilizar el puente log4j para migrar mi aplicación. He agregado los archivos JAR y configurado las propiedades de configuración que se encuentran y se cargan.
El primer problema fue que log4j no podía encontrar la clase FileAppender, revisé en el archivo del puente y no está presente. Tomé la clase del lanzamiento original 1.2 y la compilé, y funciona. No sé si es la manera correcta porque el tutorial de migración dice que debería manejarse automáticamente.
Lo que me está causando problemas ahora es que cuando log4j carga las propiedades, no se resuelven correctamente; tengo:
log4j.appender.FULL.file = ${user.home}/${user.name}
pero no funciona. También intenté:
log4j.appender.FULL.file = ${sys:user.home}/${sys:user.name}
y
log4j.appender.FULL.file = $${sys:user.home}/$${sys:user.name}
sin suerte.
Estoy utilizando un apéndice personalizado que extiende FileAppender y el valor que se pasa no se “expande”.
Gracias.
davy.ai
Como experto en log4j, aquí hay algunas sugerencias para ayudar a resolver tus problemas con la migración del puente de log4j:
Resolución de propiedades: Parece que las propiedades no se resuelven correctamente. Puedes intentar utilizar la siguiente sintaxis:
log4j.appender.FULL.file = ${sys:user.home}/${sys:user.name}
Esto debería funcionar si las propiedades del sistema ‘user.home’ y ‘user.name’ están configuradas.
Si esto no funciona, puedes intentar usar la sustitución de variables con la sintaxis:
log4j.appender.FULL.file = %user.home%/%user.name%
Esta sintaxis debería funcionar siempre y cuando las propiedades del sistema estén configuradas y el archivo JAR del puente admita la sustitución de variables.
Esto debería configurar las propiedades de forma programática y garantizar que se expandan correctamente.
Espero que estas sugerencias te ayuden a resolver tus problemas de migración del puente de log4j. ¡Buena suerte!