Chủ Nhật, 1 tháng 3, 2009

Cấu hình Log4j sử dụng file properties

Log4j thường là được cấu hình bằng cách sử dụng một tập tin properties hoặc file xml bên ngoài. Vì vậy, một khi các báo cáo log được đặt ra bạn có thể dễ dàng kiểm soát chúng bằng cách sử dụng các file cấu hình bên ngoài mà không sửa đổi mã nguồn. Bây giờ chúng ta hãy xem cách bạn có thể có được log giống như ví dụ trên bằng cách sử dụng tập tin cấu hình properties.

Ba thành phần chính bạn cần cấu hình để có được cùng một kết quả là các logger, appender và layout. Các đối tượng logger là một trong đó được sử dụng để log tin nhắn, appender là một trong đó quy định các điểm đến đầu ra giống như giao diện điều khiển hoặc một tập tin và layout là một trong đó xác định định dạng mà trong đó các thông điệp log được lưu lại.

Khi bạn cấu hình bằng cách sử dụng method BasicConfigurator.configure() mặc định nó sử dụng ConsoleAppender và PatternLayout cho tất cả các logger.

Các cấu hình dưới đây tạo ra kết quả tương tự như các method BasicConfigurator.configure().

log4j.rootLogger=DEBUG, CA
log4j.appender.CA=org.apache.log4j.ConsoleAppender

log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

RootLogger là một trong những hệ thống phân cấp logger. Ở đây chúng ta thiết lập mức độ của nó cho DEBUG và thêm vào console appender (CA) cho nó. Các appender console có thể có tên tùy ý, ở đây tên của nó là CA.

Bạn cần phải tạo một appender như được hiển thị và thiết lập layout của nó để PatternLayout. PatternLayout ConversionPattern này sử dụng để định dạng tin nhắn. Để biết thêm về các định dạng tùy chọn khác nhau bạn có thể tham khảo tài liệu. (PatternLayout)


Bạn cần phải sử dụng PropertyConfigurator.configure () để cấu hình log4j bằng cách sử dụng một tập tin properties. Log4j nên được cấu hình chỉ một lần cho toàn bộ ứng dụng.

Khi bạn thực hiện ví dụ đầu ra dưới đây sẽ được hiển thị trên console.

Kể từ khi cấp rootLogger được thiết lập để DEBUG tất cả các tin nhắn được hiển thị.

Mức log4j theo trình tự dưới đây.
  • DEBUG
  • INFO
  • WARN
  • ERROR
  • FATAL
Nếu bạn thiết lập mức độ rootLogger để cảnh báo thì chỉ có Warn, ERROR và FATAL mức độ tin nhắn sẽ được hiển thị và phần còn lại sẽ bị bỏ.


log4j.rootLogger=WARN, CA

DangTrung.

Không có nhận xét nào:

Đăng nhận xét