From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Thu, 21 Sep 2017 16:14:13 +0200 Subject: [PATCH] Handle plugin prefixes in implementation logging configuration Currently, plugin prefixes are prepended to the log message in the PluginLogger before passing the message to the underlying logging framework. This is bad design because they need to be stripped manually when using custom appenders to log messages in a different format. Additionally, it makes integration of alternative logging APIs hard because all logging must go through the PluginLogger. Avoid using PluginLogger and create a regular logger using the plugin name. The implementation should handle plugin prefixes by displaying logger names when appropriate. diff --git a/src/main/java/org/bukkit/plugin/java/JavaPlugin.java b/src/main/java/org/bukkit/plugin/java/JavaPlugin.java index f594913e6b94f77b26a4a758c447a42d8a25b6ff..7cd9f98c042dc2bb80876af35c755f81bef34651 100644 --- a/src/main/java/org/bukkit/plugin/java/JavaPlugin.java +++ b/src/main/java/org/bukkit/plugin/java/JavaPlugin.java @@ -46,7 +46,7 @@ public abstract class JavaPlugin extends PluginBase { private boolean naggable = true; private FileConfiguration newConfig = null; private File configFile = null; - private PluginLogger logger = null; + private Logger logger = null; // Paper - PluginLogger -> Logger public JavaPlugin() { // Paper start @@ -303,8 +303,8 @@ public abstract class JavaPlugin extends PluginBase { this.dataFolder = dataFolder; this.classLoader = classLoader; this.configFile = new File(dataFolder, "config.yml"); - this.logger = new PluginLogger(this); this.pluginMeta = configuration; // Paper + this.logger = Logger.getLogger(description.getPrefix() != null ? description.getPrefix() : description.getName()); // Paper - Handle plugin prefix in implementation } /**