Bagikan melalui


Mencatat menggunakan Azure SDK untuk Java dan Log4j

Artikel ini memberikan gambaran umum tentang cara menambahkan pengelogan menggunakan Log4j ke aplikasi yang menggunakan Azure SDK untuk Java. Seperti disebutkan dalam Mengonfigurasi pencatatan log di Azure SDK untuk Java, semua pustaka klien Azure mencatat melalui SLF4J, sehingga Anda dapat menggunakan kerangka kerja pencatatan seperti log4j.

Artikel ini menyediakan 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:

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

Untuk informasi selengkapnya terkait dengan 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 yang diketahui CVE-2021-44228, 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 diuraikan di bawah ini.

Menggunakan file properti

Anda dapat menempatkan 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

Anda dapat menempatkan file XML bernama log4j2.xml di direktori /src/main/resources proyek. File ini harus mengikuti bentuk 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 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 ditawarkan Azure ke dalam kerangka kerja seperti Spring dan MicroProfile.