2009-08-31 36 views
11

Tôi cần nối thêm nội dung log4j vào thành phần Swing (JTextArea hoặc tương tự). Có cách nào phổ biến để làm điều này?Log4J Swing Appender

Trả lời

10

Thay vì giới thiệu một thư viện bên ngoài, tôi đã kết thúc chỉnh sửa file log4j.properties để bao gồm những điều sau đây:

log4j.rootCategory=DEBUG, app 
log4j.appender.app=path.to.class.extending.WriterAppender 

Sau đó, tôi đã sử dụng một mô hình quan sát để gửi dữ liệu vào JTextArea GUI tôi.

+0

Bạn chỉ ghi đè phương thức WriterAppender.append()? – guerda

+0

vui lòng đăng mã của bạn; Tôi đang gặp vấn đề này –

7

Nhờ Google, tôi rõ ràng đã phát hiện ra Log4j-Swing-Appender.

+0

Log4j đu appender hoạt động tuyệt vời đối với tôi là tốt. Nó độc đáo giữ thanh cuộn ở phía dưới (không nhảy), và nếu người dùng cuộn lại, nó cho phép người dùng xem mà không cần di chuyển thanh cuộn. Nếu người dùng lại di chuyển thanh cuộn sang nút, nó sẽ bắt đầu lại tự động kiểm tra - tuyệt vời! – xorcus

3

để làm cho JScrollPane gói các thành phần mục tiêu (ví dụ JTextArea) tự động di chuyển xuống để hiển thị các mục đăng nhập mới nhất, hãy xem xét cách gọi:

org.apache.log4j.lf5.viewer.LF5SwingUtils.makeVerticalScrollBarTrack(scrollPane); 
+0

Cảm ơn! Nó rất hữu ích cho tôi. –

Các vấn đề liên quan