java logging log4j log4j2

java - Mezclando log4j 1.xy log4j 2



logging log4j2 (1)

¿Sabe que log4j2 incluye un puente para log4j-1.2? Puede usarlo eliminando el antiguo log4j-1.2.17.jar e incluir estos tres archivos jar:

  • log4j-api-2.x.jar
  • log4j-core-2.x.jar
  • log4j-1.2-api-2.x.jar

Esto dará como resultado que todas las llamadas que realice su aplicación a la API log4-1.2 se enruten a la implementación de log4j2. El FAQ tiene un diagram que puede aclarar las cosas. (¡No olvide eliminar el antiguo tarro log4j-1.2 de la ruta de clase!)

Tengo una nueva aplicación que se está escribiendo usando log4j2, para aprovechar algunas de sus nuevas características. Una de las bibliotecas que usa es un poco más antigua y fue construida con log4j 1.x. Tengo un problema donde el nuevo código en la aplicación escribe en el registro, pero el código en la biblioteca antigua no escribe en el registro. Incluso tengo una clase que es una subclase de algo en la biblioteca antigua y también se llama por código en la biblioteca antigua, y este código tampoco escribirá en el registro. He configurado la aplicación para usar log4j2 versión 2.0.2, y excluí explícitamente log4j cuando se hace referencia a la biblioteca antigua como una dependencia de Maven.

¿Cómo puedo obtener el código de la biblioteca antigua iniciando sesión en el mismo archivo que mi nuevo código?

Volver a escribir la biblioteca antigua debe considerarse como una opción de último recurso