Registro con Azure SDK para Java y Log4j
En este artículo se proporciona información general sobre cómo agregar el registro mediante Log4j a las aplicaciones que usan el SDK de Azure para Java. Como se mencionó en Configuración del registro en el Azure SDK para Java, todas las bibliotecas cliente de Azure registran mediante SLF4J, por lo que puede usar frameworks de registro como log4j.
En este artículo se proporcionan instrucciones para usar las versiones de Log4J 2.x, pero Log4J 1.x es igualmente compatible con el SDK de Azure para Java. Para habilitar el registro log4j, debe hacer dos cosas:
- Incluir la biblioteca log4j como una dependencia,
- Cree un archivo de configuración (ya sea log4j2.properties o log4j2.xml) en el directorio del proyecto /src/main/ resources.
Para obtener más información relacionada con la configuración de log4j, consulte Bienvenido a Log4j 2.
Adición de la dependencia de Maven
Para agregar la dependencia de Maven, incluya el siguiente XML en el archivo pom.xml del proyecto. Reemplace el número de versión 2.16.0
por el número de versión más reciente que se muestra en la página Enlace de Log4j SLF4J de Apache.
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.16.0</version>
</dependency>
Nota
Debido a una vulnerabilidad conocida CVE-2021-44228, asegúrese de usar Log4j versión 2.16 o posterior.
Configuración de Log4j
Hay dos maneras comunes de configurar Log4j: a través de un archivo de propiedades externos o a través de un archivo XML externo. Estos enfoques se describen a continuación.
Uso de un archivo de propiedades
Puede colocar un archivo de propiedades plano denominado log4j2.properties en el directorio /src/main/resources del proyecto. Este archivo debe tener la siguiente forma:
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d %5p [%t] %c{3} - %m%n
logger.app.name = com.azure.core
logger.app.level = ERROR
rootLogger.level = info
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
Uso de un archivo XML
Puede colocar un archivo XML denominado log4j2.xml en el directorio /src/main/resources del proyecto. Este archivo debe tener la siguiente forma:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d %5p [%t] %c{3} - %m%n" />
</Console>
</Appenders>
<Loggers>
<Logger name="com.azure.core" level="error" additivity="true">
<appender-ref ref="console" />
</Logger>
<Root level="info" additivity="false">
<appender-ref ref="console" />
</Root>
</Loggers>
</Configuration>
Pasos siguientes
En este artículo se ha tratado la configuración de Log4j y cómo hacer que el SDK de Azure para Java lo use para el registro. Dado que el SDK de Azure para Java funciona con todos los marcos de registro de SLF4J, considere la posibilidad de revisar los manuales de instrucción de SLF4J para obtener más detalles. Si usa Log4j, también hay una gran cantidad de instrucciones de configuración en su sitio web. Para obtener más información, consulte Bienvenido a Log4j 2.
Después de dominar el registro, considere la posibilidad de examinar las integraciones que Azure ofrece en marcos como Spring y MicroProfile.