log4j - Tổng quan
log4j là một khung ghi nhật ký (API) đáng tin cậy, nhanh chóng và linh hoạt được viết bằng Java, được phân phối theo Giấy phép Phần mềm Apache.
log4j đã được chuyển sang các ngôn ngữ C, C ++, C #, Perl, Python, Ruby và Eiffel.
log4j có thể cấu hình cao thông qua các tệp cấu hình bên ngoài trong thời gian chạy. Nó xem quá trình ghi nhật ký theo mức độ ưu tiên và cung cấp các cơ chế để hướng thông tin ghi nhật ký đến nhiều đích khác nhau, chẳng hạn như cơ sở dữ liệu, tệp, bảng điều khiển, UNIX Syslog, v.v.
log4j có ba thành phần chính:
loggers: Chịu trách nhiệm nắm bắt thông tin ghi nhật ký.
appenders: 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.
layouts: Chịu trách nhiệm định dạng thông tin ghi nhật ký theo các kiểu khác nhau.
Lịch sử của log4j
Bắt đầu vào đầu năm 1996 với tư cách là API truy tìm cho dự án EU SEMPER (Thị trường điện tử an toàn cho châu Âu).
Sau vô số cải tiến và một số hiện thân, API ban đầu đã phát triển để trở thành log4j, một gói ghi nhật ký phổ biến cho Java.
Gói này được phân phối theo Giấy phép Phần mềm Apache, một giấy phép nguồn mở chính thức được chứng nhận bởi sáng kiến nguồn mở.
Bạn có thể tìm thấy phiên bản log4j mới nhất, bao gồm mã nguồn đầy đủ, các tệp lớp và tài liệu tại http://logging.apache.org/log4j/.
Tính năng log4j
Nó là chủ đề an toàn.
Nó được tối ưu hóa cho tốc độ.
Nó dựa trên một hệ thống phân cấp trình ghi nhật ký được đặt tên.
Nó hỗ trợ nhiều trình phụ lục đầu ra cho mỗi trình ghi.
Nó hỗ trợ quốc tế hóa.
Nó không bị giới hạn trong một tập hợp các cơ sở được xác định trước.
Hành vi ghi nhật ký có thể được đặt trong thời gian chạy bằng tệp cấu hình.
Nó được thiết kế để xử lý các ngoại lệ Java ngay từ đầu.
Nó sử dụng nhiều cấp, cụ thể là TẤT CẢ, TRACE, GỠ LỖI, THÔNG TIN, CẢNH BÁO, LỖI và CHẤT BÉO.
Có thể dễ dàng thay đổi định dạng của đầu ra nhật ký bằng cách mở rộng lớp Bố cục .
Mục tiêu của đầu ra nhật ký cũng như chiến lược viết có thể được thay đổi bằng cách triển khai giao diện Appender.
Nó là thất bại. Tuy nhiên, mặc dù chắc chắn nỗ lực để đảm bảo việc phân phối, log4j không đảm bảo rằng mỗi câu lệnh nhật ký sẽ được gửi đến đích của nó.
Ưu và nhược điểm của ghi nhật ký
Ghi nhật ký là một thành phần quan trọng của phát triển phần mềm. Mã ghi nhật ký được viết tốt cung cấp khả năng gỡ lỗi nhanh chóng, bảo trì dễ dàng và lưu trữ có cấu trúc thông tin thời gian chạy của ứng dụng.
Ghi nhật ký cũng có nhược điểm của nó. Nó có thể làm chậm một ứng dụng. Nếu quá dài dòng, nó có thể gây mù cuộn. Để giảm bớt những lo lắng này, log4j được thiết kế để đáng tin cậy, nhanh chóng và có thể mở rộng.
Vì ghi nhật ký hiếm khi là trọng tâm chính của ứng dụng, nên API log4j cố gắng trở nên đơn giản để hiểu và sử dụng.