log4j - Kiến trúc

API log4j tuân theo một kiến ​​trúc phân lớp trong đó mỗi lớp cung cấp các đối tượng khác nhau để thực hiện các tác vụ khác nhau. Kiến trúc phân lớp này làm cho thiết kế linh hoạt và dễ dàng mở rộng trong tương lai.

Có hai loại đối tượng có sẵn với khuôn khổ log4j.

  • Core Objects:Đây là những đối tượng bắt buộc của khuôn khổ. Họ được yêu cầu sử dụng khuôn khổ.

  • Support Objects:Đây là các đối tượng tùy chọn của khung. Chúng hỗ trợ các đối tượng cốt lõi để thực hiện các nhiệm vụ bổ sung nhưng quan trọng.

Đối tượng cốt lõi

Đối tượng cốt lõi bao gồm các loại đối tượng sau:

Đối tượng Logger

Lớp cấp cao nhất là Logger cung cấp đối tượng Logger. Đối tượng Logger chịu trách nhiệm thu thập thông tin ghi nhật ký và chúng được lưu trữ trong hệ thống phân cấp vùng tên.

Đối tượng bố cục

Lớp bố cục cung cấp các đối tượng được sử dụng để định dạng thông tin ghi nhật ký theo các kiểu khác nhau. Nó cung cấp hỗ trợ để bổ sung các đối tượng trước khi xuất bản thông tin ghi nhật ký.

Các đối tượng bố cục đóng một vai trò quan trọng trong việc xuất bản thông tin ghi nhật ký theo cách mà con người có thể đọc được và có thể sử dụng lại.

Đối tượng Appender

Đây là lớp cấp thấp hơn cung cấp các đối tượng Appender. Đối tượng Appender chịu trách nhiệm xuất bản thông tin ghi nhật ký đến các điểm đến ưa thích khác nhau như cơ sở dữ liệu, tệp, bảng điều khiển, UNIX Syslog, v.v.

Sơ đồ ảo sau đây cho thấy các thành phần của khung log4J:

Đối tượng hỗ trợ

Có những đối tượng quan trọng khác trong khung log4j đóng vai trò quan trọng trong khung ghi nhật ký:

Đối tượng cấp độ

Đối tượng Cấp xác định mức độ chi tiết và mức độ ưu tiên của bất kỳ thông tin ghi nhật ký nào. Có bảy cấp độ ghi nhật ký được xác định trong API: TẮT, GỠ LỖI, THÔNG TIN, LỖI, CẢNH BÁO, CHẤT BÉO và TẤT CẢ.

Đối tượng lọc

Đối tượng Bộ lọc được sử dụng để phân tích thông tin ghi nhật ký và đưa ra quyết định tiếp theo về việc thông tin đó có nên được ghi lại hay không.

Một đối tượng Appender có thể có một số đối tượng Bộ lọc được liên kết với chúng. Nếu thông tin ghi nhật ký được chuyển đến một đối tượng Appender cụ thể, tất cả các đối tượng Bộ lọc được liên kết với Appender đó cần phải phê duyệt thông tin ghi nhật ký trước khi nó có thể được xuất bản đến đích đính kèm.

ObjectRenderer

Đối tượng ObjectRenderer chuyên cung cấp biểu diễn chuỗi của các đối tượng khác nhau được chuyển đến khung ghi nhật ký. Đối tượng này được sử dụng bởi các đối tượng Layout để chuẩn bị thông tin ghi nhật ký cuối cùng.

LogManager

Đối tượng LogManager quản lý khung ghi nhật ký. Nó chịu trách nhiệm đọc các thông số cấu hình ban đầu từ tệp cấu hình toàn hệ thống hoặc một lớp cấu hình.