Log dengan Azure SDK for Java dan Log4j
Artikel ini memberikan gambaran umum tentang cara menambahkan pengelogan menggunakan Log4j ke aplikasi yang menggunakan Azure SDK for Java. Seperti disebutkan dalam Mengonfigurasi pengelogan di Azure SDK for Java, semua pustaka klien Azure log melalui SLF4J, sehingga Anda dapat menggunakan kerangka kerja pengelogan seperti log4j.
Artikel ini memberikan panduan untuk menggunakan rilis Log4J 2.x, tetapi Log4J 1.x sama-sama didukung oleh Azure SDK untuk Java. Untuk mengaktifkan pengelogan log4j, Anda harus melakukan dua hal:
- Sertakan pustaka log4j sebagai dependensi,
- Buat file konfigurasi (baik log4j2.properties atau log4j2.xml) di bawah direktori proyek /src/main/resources.
Untuk informasi selengkapnya terkait konfigurasi log4j, lihat Selamat Datang di Log4j 2.
Menambahkan dependensi Maven
Untuk menambahkan dependensi Maven, sertakan XML berikut dalam file pom.xml proyek. Ganti nomor versi 2.16.0 dengan nomor versi rilis tebaru yang ditampilkan di halaman Pengikatan Log4j SLF4J.
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.16.0</version>
</dependency>
Catatan
Karena kerentanan CVE-2021-44228 yang diketahui, pastikan untuk menggunakan Log4j versi 2.16 atau yang lebih baru
Mengonfigurasi Log4j
Ada dua cara umum untuk mengonfigurasi Log4j: melalui file properti eksternal, atau melalui file XML eksternal. Pendekatan ini di garis luar di bawah.
Menggunakan file properti
Anda dapat menempatkan file properti datar bernama log4j2.properties di direktori /src/main/resources proyek. File ini harus mengambil formulir berikut:
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
Menggunakan file XML
Anda dapat menempatkan file XML bernama log4j2.xml di direktori /src/main/resources proyek. File ini harus mengambil formulir berikut:
<?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>
Langkah berikutnya
Artikel ini membahas konfigurasi Log4j dan cara membuat Azure SDK for Java menggunakannya untuk pengelogan. Karena Azure SDK for Java berfungsi dengan semua kerangka kerja pengelogan SLF4J, pertimbangkan untuk meninjau manual pengguna SLF4J untuk detail lengkapnya. Jika Anda menggunakan Log4j, ada banyak panduan konfigurasi di situs webnya. Untuk informasi lebih lanjut, lihat Selamat Datang di Log4j 2!
Setelah Anda menguasai pengelogan, pertimbangkan untuk melihat integrasi yang ditawarkan Azure ke dalam kerangka kerja seperti Spring dan MicroProfile.