Nếu log4j.properties tôi trông nàyLàm thế nào để có được logger riêng biệt trong log4j?
# General configuration
log4j.rootLogger = ERROR, ConsoleAppender
# Appender configuration
log4j.appender.ConsoleAppender = org.apache.log4j.ConsoleAppender
log4j.appender.ConsoleAppender.layout = org.apache.log4j.PatternLayout
log4j.appender.ConsoleAppender.layout.ConversionPattern = %5p (%c) %m%n
#Other Loggers
log4j.logger.com.foo=INFO
log4j.logger.com.foo.Bar=DEBUG
log4j.logger.org.springframework=INFO
Có một cách dễ dàng để có được chỉ là logger com.foo
, com.foo.Bar
, root
, và org.springframework
. Và không phải các lớp cụ thể đã được tạo và kế thừa các cấp (IE com.foo.bar.Baz
?
Vì mục đích của tôi, tôi muốn tạo một trang quản trị hiển thị các trình ghi nhật ký này và cấp độ của chúng, nhưng không phải tất cả logger, chỉ là những cái đã được cấu hình trực tiếp Hiện tại, tôi đang duyệt qua phân cấp cha cho đến khi tôi gặp một trình ghi có cấp độ khác mà cha mẹ của nó, nhưng có thể ẩn một số trình ghi nhật ký được định cấu hình nếu chúng ở trong hệ thống phân cấp và đặt cùng cấp như thứ gì đó cao hơn.
Đang phân tích cú pháp tệp thuộc tính ra khỏi câu hỏi? –
Không, bằng cách sử dụng log4j lập trình để khám phá trình ghi nhật ký nào đã được định cấu hình và không chỉ kế thừa từ các trình ghi nhật ký khác. – Kodi