Mencatat menggunakan Azure SDK untuk Java dan Log4j

Artikel ini memperlihatkan cara mengonfigurasi Log4j untuk aplikasi yang menggunakan Azure SDK untuk Java. Seperti disebutkan dalam Mengonfigurasi pengelogan di Azure SDK untuk Java, semua pustaka klien Azure masuk melalui SLF4J, sehingga Anda dapat menggunakan kerangka kerja seperti Log4j 2 untuk menyederhanakan pemecahan masalah.

Artikel ini menyediakan panduan untuk menggunakan rilis Log4J 2.x, tetapi Azure SDK untuk Java juga mendukung Log4J 1.x. Untuk mengaktifkan pengelogan log4j, selesaikan dua langkah berikut:

  1. Sertakan pustaka log4j sebagai dependensi.
  2. Buat file konfigurasi (log4j2.properties atau log4j2.xml) di bawah direktori proyek /src/main/resources .

Untuk informasi selengkapnya tentang mengonfigurasi log4j, lihat Selamat Datang di Log4j 2.

Tambahkan dependensi Maven

Untuk menambahkan dependensi Maven, sertakan XML berikut dalam file pom.xml proyek. Ganti nomor versi 2.16.0 dengan nomor versi terbaru yang dirilis yang ditampilkan di halaman pengikatan Apache Log4j SLF4J.

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.16.0</version>
</dependency>

Nota

Karena kerentanan CVE-2021-44228 yang diketahui, pastikan untuk menggunakan Log4j versi 2.16 atau yang lebih baru.

Konfigurasikan Log4j

Anda dapat mengonfigurasi Log4j dengan dua cara umum: melalui file properti eksternal atau melalui file XML eksternal. Bagian berikut menguraikan pendekatan ini.

Menggunakan file properti

Tempatkan file properti datar bernama log4j2.properties di direktori /src/main/resources proyek. File ini harus mengambil format 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

Tempatkan file XML bernama log4j2.xml di direktori /src/main/resources proyek. File harus mengikuti struktur ini:

<?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 untuk Java menggunakannya untuk pengelogan. Karena Azure SDK untuk Java berfungsi dengan semua kerangka kerja pengelogan SLF4J, pertimbangkan untuk meninjau manual pengguna SLF4J untuk detail lebih lanjut. Jika Anda menggunakan Log4j, ada juga sejumlah besar panduan konfigurasi di situs webnya. Untuk informasi selengkapnya, lihat Selamat Datang di Log4j 2!

Setelah Anda menguasai pengelogan, pertimbangkan untuk melihat integrasi yang Azure tawarkan ke dalam kerangka kerja seperti Spring.