2021-06-11 14:02:28 +02:00
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.
2021-06-12 14:58:17 +02:00
diff --git a/build.gradle.kts b/build.gradle.kts
2024-11-09 22:49:07 +01:00
index c808f36b30d0f8edb8365875039fd20b8c20007d..59f52f56dd9dc80a929f1ae754138e4ca2ecf493 100644
2021-06-12 14:58:17 +02:00
--- a/build.gradle.kts
+++ b/build.gradle.kts
2024-11-09 22:49:07 +01:00
@@ -35,7 +35,7 @@ dependencies {
2021-06-12 14:58:17 +02:00
all its classes to check if they are plugins.
Scanning takes about 1-2 seconds so adding this speeds up the server start.
*/
2023-07-02 07:00:46 +02:00
- 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)
2021-06-11 14:02:28 +02:00
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
2024-07-18 16:50:16 +02:00
index e42677a14ec8e1a42747603fb4112822e326fb70..744edd40128c910c3ad2f3657bde995612e0a1e4 100644
2021-06-11 14:02:28 +02:00
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
2024-07-18 16:50:16 +02:00
@@ -284,7 +284,7 @@ public class SpigotConfig
2021-06-11 14:02:28 +02:00
private static void playerSample()
{
2021-06-12 14:58:17 +02:00
SpigotConfig.playerSample = SpigotConfig.getInt( "settings.sample-count", 12 );
- System.out.println( "Server Ping Player Sample Count: " + SpigotConfig.playerSample );
2021-06-11 14:02:28 +02:00
+ 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
2024-04-23 21:23:27 +02:00
index 301874c1fe16c52ffa6228d79e6617d746e9a035..e073707a46397f62bedf1d413f9e5764e77dda6a 100644
2021-06-11 14:02:28 +02:00
--- a/src/main/resources/log4j2.xml
+++ b/src/main/resources/log4j2.xml
@@ -5,10 +5,22 @@
2024-04-23 21:23:27 +02:00
<PatternLayout pattern="[%d{HH:mm:ss} %level]: %msg{nolookups}%n" />
2021-06-11 14:02:28 +02:00
</Queue>
<TerminalConsole name="TerminalConsole">
2023-06-13 00:00:12 +02:00
- <PatternLayout pattern="%highlightError{[%d{HH:mm:ss} %level]: %msg%n%xEx}" />
2021-06-11 14:02:28 +02:00
+ <PatternLayout>
2023-06-13 00:00:12 +02:00
+ <LoggerNamePatternSelector defaultPattern="%highlightError{[%d{HH:mm:ss} %level]: [%logger] %msg%n%xEx}">
2021-06-11 14:02:28 +02:00
+ <!-- Log root, Minecraft, Mojang and Bukkit loggers without prefix -->
+ <PatternMatch key=",net.minecraft.,Minecraft,com.mojang."
2023-06-13 00:00:12 +02:00
+ pattern="%highlightError{[%d{HH:mm:ss} %level]: %msg%n%xEx}" />
2021-06-11 14:02:28 +02:00
+ </LoggerNamePatternSelector>
+ </PatternLayout>
</TerminalConsole>
<RollingRandomAccessFile name="File" fileName="logs/latest.log" filePattern="logs/%d{yyyy-MM-dd}-%i.log.gz">
2023-06-13 00:00:12 +02:00
- <PatternLayout pattern="[%d{HH:mm:ss}] [%t/%level]: %stripAnsi{%msg}%n" />
2021-06-11 14:02:28 +02:00
+ <PatternLayout>
2023-06-13 00:00:12 +02:00
+ <LoggerNamePatternSelector defaultPattern="[%d{HH:mm:ss}] [%t/%level]: [%logger] %stripAnsi{%msg}%n">
2021-06-11 14:02:28 +02:00
+ <!-- Log root, Minecraft, Mojang and Bukkit loggers without prefix -->
+ <PatternMatch key=",net.minecraft.,Minecraft,com.mojang."
2023-06-13 00:00:12 +02:00
+ pattern="[%d{HH:mm:ss}] [%t/%level]: %stripAnsi{%msg}%n" />
2021-06-11 14:02:28 +02:00
+ </LoggerNamePatternSelector>
+ </PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<OnStartupTriggeringPolicy />