Samudra Gupta giải thích trong cuốn sách 1 của mình :
Đối Logger
tượng là đối tượng chính mà nhà phát triển ứng dụng sử dụng để ghi bất kỳ thông báo nào. Các Logger
đối tượng hoạt động trong một phiên bản cụ thể của ứng dụng tuân theo thứ bậc cha-con .
Nếu bạn có cấu hình sau:
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
log4j.logger.com.me.proj2=INFO
Đây là cách hệ thống phân cấp của trình ghi nhật ký có thể kết thúc như sau: 2
Samudra Gupta tiếp tục giải thích:
Ở trên cùng của hệ thống phân cấp tồn tại một trình ghi gốc. Trình ghi gốc tồn tại bên ngoài phạm vi của bất kỳ phân cấp trình ghi nhật ký tùy chỉnh nào mà chúng tôi có thể đưa ra. Nó luôn tồn tại dưới dạng trình ghi gốc cho tất cả các cấu trúc phân cấp có thể có của trình ghi nhật ký và nó không có không gian tên. Tất cả các Logger
đối tượng dành riêng cho ứng dụng khác là các đối tượng con của bộ ghi gốc. Mối quan hệ cha-con của các trình ghi nhật ký biểu thị sự phụ thuộc của các trình ghi nhật ký hoạt động trong cùng một ứng dụng. Một trình ghi con có thể kế thừa các thuộc tính từ trình ghi cha của nó một cách đệ quy lên cây. Thông thường, một trình ghi con sẽ kế thừa các thuộc tính sau từ (các) trình ghi mẹ của nó:
Level
: Nếu trình ghi con không có cấp độ cây rõ ràng được chỉ định, nó sẽ sử dụng cấp độ của cấp độ gốc gần nhất hoặc cấp độ thích hợp đầu tiên mà nó tìm thấy đệ quy lên hệ thống phân cấp.
Appender
: Nếu không có appender nào được gắn vào một trình ghi, trình ghi con sử dụng appender của trình ghi mẹ gần nhất của nó hoặc appender đầu tiên mà nó tìm thấy một cách đệ quy lên cây.
ResourceBundle
: ResourceBundles
là các tệp thuộc tính mẫu khóa-giá trị được sử dụng để bản địa hóa thông báo ghi nhật ký. Trình ghi con kế thừa bất kỳ ResourceBundle
liên kết nào với trình ghi mẹ của nó.
LƯU Ý
1 Samudra Gupta, Pro Apache Log4j, Phiên bản thứ hai (Berkeley, CA: Apress, 2005), 24-25, ISBN13: 978-1-59059-499-5
2 Dominic Mitchell, Đăng nhập bằng Java , http://happygiraffe.net/blog/2008/09/03/logging-in-java/ , Truy cập ngày 26 tháng 5 năm 2014.