Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-15 19:10:09 +01:00
Use Log4j IOStreams to redirect System.out/err to logger
Log4j2 provides an optimized implementation of PrintStream that redirects its output to a logger. Use it instead of a custom implementation for minor performance improvements and some fixes. With the old implementation, each call to System.print() results in a separate line, even though it should not result in a line break. Log4j's implementation handles it correctly.
Dieser Commit ist enthalten in:
Ursprung
1eadde1ee5
Commit
10893fea38
@ -0,0 +1,51 @@
|
||||
From a7ced92f0d09b6e25e5c66dc24db2da45f3341f7 Mon Sep 17 00:00:00 2001
|
||||
From: Minecrell <dev@minecrell.net>
|
||||
Date: Mon, 18 Sep 2017 12:00:03 +0200
|
||||
Subject: [PATCH] Use Log4j IOStreams to redirect System.out/err to logger
|
||||
|
||||
Log4j2 provides an optimized implementation of PrintStream that
|
||||
redirects its output to a logger. Use it instead of a custom
|
||||
implementation for minor performance improvements and some fixes.
|
||||
|
||||
With the old implementation, each call to System.print()
|
||||
results in a separate line, even though it should not result in
|
||||
a line break. Log4j's implementation handles it correctly.
|
||||
|
||||
diff --git a/pom.xml b/pom.xml
|
||||
index 98972114d..aff997468 100644
|
||||
--- a/pom.xml
|
||||
+++ b/pom.xml
|
||||
@@ -97,6 +97,13 @@
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
+ <!-- Paper - Add additional Log4J dependencies -->
|
||||
+ <dependency>
|
||||
+ <groupId>org.apache.logging.log4j</groupId>
|
||||
+ <artifactId>log4j-iostreams</artifactId>
|
||||
+ <version>2.8.1</version>
|
||||
+ </dependency>
|
||||
+
|
||||
<!-- testing -->
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
index b3f1aa999..854455711 100644
|
||||
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
@@ -129,8 +129,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
|
||||
*/
|
||||
// Paper end
|
||||
|
||||
- System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true));
|
||||
- System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true));
|
||||
+ // Paper start - Use Log4j IOStreams
|
||||
+ System.setOut(org.apache.logging.log4j.io.IoBuilder.forLogger(logger).setLevel(Level.INFO).buildPrintStream());
|
||||
+ System.setErr(org.apache.logging.log4j.io.IoBuilder.forLogger(logger).setLevel(Level.WARN).buildPrintStream());
|
||||
+ // Paper end
|
||||
// CraftBukkit end
|
||||
|
||||
thread.setDaemon(true);
|
||||
--
|
||||
2.14.1
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren