2015-06-24 25 views
11

Tôi muốn thay thế cơ chế ghi nhật ký chuẩn trong số WildFly-8.x của mình bằng log4j2.Cách chạy WildFly-8.x với log4j2 & slf4j

Ý tưởng của tôi làm điều này đã được bổ sung thêm các lọ sau khi module:

log4j-api-2.3.jar 
log4j-core-2.3.jar 

và thêm một module.xml để có logger cung cấp bởi máy chủ.

Vì tôi alredy sử dụng slf4j trong ứng dụng của tôi, được xây dựng qua Maven, tôi quyết định chỉ cần thêm những thứ sau vào pom.xml tôi để xây dựng của tôi EAR-file

<!-- versions are provided via private parent-pom --> 
    <!-- slf4j-api --> 
    <dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-api</artifactId> 
    <scope>provided</scope> 
    </dependency> 
    <!-- slf4j to log4j2, needed??? --> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-slf4j-impl</artifactId> 
    <scope>provided</scope> 
    </dependency> 
    <!-- log4j2 api, do I really need this?? --> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-api</artifactId> 
    <scope>provided</scope> 
    </dependency> 
    <!-- log4j2 api, do I really need this?? --> 
    <dependency> 
    <groupId>org.apache.logging.log4j</groupId> 
    <artifactId>log4j-core</artifactId> 
    <scope>provided</scope> 
    </dependency> 

Vì vậy, một số câu hỏi vẫn còn:

1.) Tôi có cần phụ thuộc bổ sung trong số jboss-deployment-structure.xml của mình, thứ gì đó trông như thế này không?

[...] 
<ear-subdeployment-isolated>false</ear-subdeployment-isolated> 
<deployment> 
    <dependencies> 
    [...] 
    <!-- name taken from my introduced module.xml --> 
    <module name="org.apache.logging.log4j2" slot="main" export="true" /> 
    [...] 
    </dependencies> 
</deployment> 

2.) Làm cách nào để định cấu hình log4j2 trong standalone-*.xml? Tôi đoán rằng <loggers/><handlers/> sẽ chỉ hoạt động với hệ thống tích hợp sẵn?

3.) Tôi có cần phải chỉ định đoạn mã pom.xml ở trên vào mọi mô-đun maven nơi tôi đăng nhập thứ gì đó (gần như mọi mô-đun nơi lớp java cư trú) không?

Và một chút "kẹo" câu hỏi: 4.) Làm thế nào để tôi thiết lập log4j2 để nén logfiles, vì nó đã được thực hiện với log4j (1) -extras?

+0

Đối nén tập tin bạn chỉ cần thêm .zip mở rộng hoặc gz với tên tập tin đăng nhập và nó sẽ được nén tương ứng – alan7678

Trả lời

3

Tôi hy vọng this liên kết giúp đỡ bạn, nó chứa khung đăng nhập thay thế cho hầu hết các AS

và cho câu hỏi của bạn 4

Làm thế nào để thiết lập log4j2 để nén tập tin ghi lưu, vì nó đã được thực hiện với log4j (1) -extras?

bạn có thể cấu hình nó như dưới đây

filePattern="logs/app-%d{MM-dd-yyyy}.log.gz" 

nếu bạn đang sử dụng RollingFile appender

+0

Rất cám ơn câu trả lời của bạn. Thật không may là nó không hoàn toàn đáp ứng nhu cầu của tôi, vì tôi thực sự muốn 'Marker Support' trong quá trình đăng nhập của tôi. – Rob

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