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/>
và <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?
Đố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