log4j - Arsitektur

API log4j mengikuti arsitektur berlapis di mana setiap lapisan menyediakan objek yang berbeda untuk melakukan tugas yang berbeda. Arsitektur berlapis ini membuat desain menjadi fleksibel dan mudah dikembangkan di masa mendatang.

Ada dua jenis objek yang tersedia dengan framework log4j.

  • Core Objects:Ini adalah objek wajib dari framework. Mereka diharuskan menggunakan kerangka kerja.

  • Support Objects:Ini adalah objek opsional dari kerangka kerja. Mereka mendukung objek inti untuk melakukan tugas tambahan tetapi penting.

Objek Inti

Objek inti termasuk jenis objek berikut -

Objek Logger

Lapisan tingkat atas adalah Logger yang menyediakan objek Logger. Objek Logger bertanggung jawab untuk menangkap informasi logging dan disimpan dalam hierarki namespace.

Objek Tata Letak

Lapisan tata letak menyediakan objek yang digunakan untuk memformat informasi logging dalam gaya yang berbeda. Ini memberikan dukungan ke objek appender sebelum menerbitkan informasi logging.

Objek tata letak memainkan peran penting dalam menerbitkan informasi logging dengan cara yang dapat dibaca manusia dan dapat digunakan kembali.

Objek Penambah

Ini adalah lapisan tingkat bawah yang menyediakan objek Appender. Objek Appender bertanggung jawab untuk menerbitkan informasi pencatatan ke berbagai tujuan yang disukai seperti database, file, konsol, UNIX Syslog, dll.

Diagram virtual berikut menunjukkan komponen kerangka kerja log4J:

Objek Pendukung

Ada objek penting lainnya dalam kerangka kerja log4j yang memainkan peran penting dalam kerangka kerja logging:

Objek Level

Objek Level mendefinisikan perincian dan prioritas informasi logging apa pun. Ada tujuh level logging yang ditentukan dalam API: OFF, DEBUG, INFO, ERROR, WARN, FATAL, dan ALL.

Objek Filter

Objek Filter digunakan untuk menganalisis informasi pencatatan dan membuat keputusan lebih lanjut tentang apakah informasi itu harus dicatat atau tidak.

Objek Appender dapat memiliki beberapa objek Filter yang terkait dengannya. Jika informasi logging diteruskan ke objek Appender tertentu, semua objek Filter yang terkait dengan Appender itu perlu menyetujui informasi logging sebelum dapat dipublikasikan ke tujuan yang dilampirkan.

ObjectRenderer

Objek ObjectRenderer mengkhususkan diri dalam menyediakan representasi String dari objek berbeda yang diteruskan ke kerangka kerja logging. Objek ini digunakan oleh objek Layout untuk menyiapkan informasi logging akhir.

LogManager

Objek LogManager mengelola kerangka kerja logging. Ini bertanggung jawab untuk membaca parameter konfigurasi awal dari file konfigurasi seluruh sistem atau kelas konfigurasi.