mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-22 22:45:31 +01:00
83767f9544
allows for better runtime class redefinition closes #10459
71 lines
4 KiB
Diff
71 lines
4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Minecrell <minecrell@minecrell.net>
|
|
Date: Thu, 21 Sep 2017 16:14:55 +0200
|
|
Subject: [PATCH] Handle plugin prefixes using Log4J configuration
|
|
|
|
Display logger name in the console for all loggers except the
|
|
root logger, Bukkit's logger ("Minecraft") and Minecraft loggers.
|
|
Since plugins now use the plugin name as logger name this will
|
|
restore the plugin prefixes without having to prepend them manually
|
|
to the log messages.
|
|
|
|
Logger prefixes are shown by default for all loggers except for
|
|
the root logger, the Minecraft/Mojang loggers and the Bukkit loggers.
|
|
This may cause additional prefixes to be disabled for plugins bypassing
|
|
the plugin logger.
|
|
|
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
|
index f7a1c358b0caf524707dcf1346d1d5a22500ce59..1d9baec8ebafb694e259af6a24892a899791a550 100644
|
|
--- a/build.gradle.kts
|
|
+++ b/build.gradle.kts
|
|
@@ -23,7 +23,7 @@ dependencies {
|
|
all its classes to check if they are plugins.
|
|
Scanning takes about 1-2 seconds so adding this speeds up the server start.
|
|
*/
|
|
- runtimeOnly("org.apache.logging.log4j:log4j-core:2.19.0")
|
|
+ implementation("org.apache.logging.log4j:log4j-core:2.19.0") // Paper - implementation
|
|
log4jPlugins.annotationProcessorConfigurationName("org.apache.logging.log4j:log4j-core:2.19.0") // Paper - Needed to generate meta for our Log4j plugins
|
|
runtimeOnly(log4jPlugins.output)
|
|
alsoShade(log4jPlugins.output)
|
|
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
|
|
index 60e354fe1d32cd315ed42cea4484c83c4b5e7e25..899e85ea70edfb6553dc27462690da8caa793f77 100644
|
|
--- a/src/main/java/org/spigotmc/SpigotConfig.java
|
|
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
|
|
@@ -288,7 +288,7 @@ public class SpigotConfig
|
|
private static void playerSample()
|
|
{
|
|
SpigotConfig.playerSample = SpigotConfig.getInt( "settings.sample-count", 12 );
|
|
- System.out.println( "Server Ping Player Sample Count: " + SpigotConfig.playerSample );
|
|
+ Bukkit.getLogger().log( Level.INFO, "Server Ping Player Sample Count: {0}", playerSample ); // Paper - Use logger
|
|
}
|
|
|
|
public static int playerShuffle;
|
|
diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml
|
|
index 301874c1fe16c52ffa6228d79e6617d746e9a035..e073707a46397f62bedf1d413f9e5764e77dda6a 100644
|
|
--- a/src/main/resources/log4j2.xml
|
|
+++ b/src/main/resources/log4j2.xml
|
|
@@ -5,10 +5,22 @@
|
|
<PatternLayout pattern="[%d{HH:mm:ss} %level]: %msg{nolookups}%n" />
|
|
</Queue>
|
|
<TerminalConsole name="TerminalConsole">
|
|
- <PatternLayout pattern="%highlightError{[%d{HH:mm:ss} %level]: %msg%n%xEx}" />
|
|
+ <PatternLayout>
|
|
+ <LoggerNamePatternSelector defaultPattern="%highlightError{[%d{HH:mm:ss} %level]: [%logger] %msg%n%xEx}">
|
|
+ <!-- Log root, Minecraft, Mojang and Bukkit loggers without prefix -->
|
|
+ <PatternMatch key=",net.minecraft.,Minecraft,com.mojang."
|
|
+ pattern="%highlightError{[%d{HH:mm:ss} %level]: %msg%n%xEx}" />
|
|
+ </LoggerNamePatternSelector>
|
|
+ </PatternLayout>
|
|
</TerminalConsole>
|
|
<RollingRandomAccessFile name="File" fileName="logs/latest.log" filePattern="logs/%d{yyyy-MM-dd}-%i.log.gz">
|
|
- <PatternLayout pattern="[%d{HH:mm:ss}] [%t/%level]: %stripAnsi{%msg}%n" />
|
|
+ <PatternLayout>
|
|
+ <LoggerNamePatternSelector defaultPattern="[%d{HH:mm:ss}] [%t/%level]: [%logger] %stripAnsi{%msg}%n">
|
|
+ <!-- Log root, Minecraft, Mojang and Bukkit loggers without prefix -->
|
|
+ <PatternMatch key=",net.minecraft.,Minecraft,com.mojang."
|
|
+ pattern="[%d{HH:mm:ss}] [%t/%level]: %stripAnsi{%msg}%n" />
|
|
+ </LoggerNamePatternSelector>
|
|
+ </PatternLayout>
|
|
<Policies>
|
|
<TimeBasedTriggeringPolicy />
|
|
<OnStartupTriggeringPolicy />
|