2010-02-08 29 views
8

Chúng tôi cần hiển thị các tệp nhật ký JBoss từ bên trong ứng dụng web của chúng tôi. Có thể đạt được điều này mà không cần sử dụng ServerConfigLocator không? Ứng dụng phải có khả năng chạy với Websphere và chúng tôi không muốn phụ thuộc vào các JAR cụ thể.Cách lấy thư mục nhật ký JBoss

Trả lời

12

Thư mục nhật ký được xác định của JBoss được giữ trong thuộc tính hệ thống jboss.server.log.dir. Bạn có thể giải quyết thư mục đó theo số java.io.File và đọc các tệp bên trong.

File logDir = new File(System.getProperty("jboss.server.log.dir")); 
logDir.list(); // etc etc 

Bạn cũng có thể nhận được điều này thông qua ServerConfig.getServerLogDir() (trên JBoss 4.x), nhưng bạn nói bạn muốn tránh phụ thuộc JAR.

1

Bạn có thể sử dụng triển khai nhật ký tùy chỉnh. Điều này sẽ cung cấp cho bạn toàn quyền kiểm soát hành vi đăng nhập.

JBoss sử dụng Log4j làm cơ chế ghi nhật ký. WebSphere sử dụng Jakarta Commons Logging, có thể được cấu hình để ủy quyền cho Log4j nếu nó không phải là mặc định. Nếu bạn đã sử dụng Log4j trong ứng dụng của bạn thì tôi không nghĩ rằng sự khác biệt này sẽ gây ra cho bạn bất kỳ vấn đề mới.

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