Install appenders on disabled colorLoggingLevel too
This commit is contained in:
parent
b8c61ecaba
commit
327ca3c614
|
@ -2,9 +2,11 @@ package com.github.games647.colorconsole.bukkit;
|
|||
|
||||
import com.github.games647.colorconsole.common.CommonLogInstaller;
|
||||
import com.google.common.collect.Maps;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
import java.util.logging.Level;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.core.Appender;
|
||||
import org.apache.logging.log4j.core.Layout;
|
||||
|
@ -82,24 +84,17 @@ public class ColorConsoleBukkit extends JavaPlugin {
|
|||
getLogger().log(Level.WARNING, "Cannot install log format", ex);
|
||||
}
|
||||
|
||||
if (getConfig().getBoolean("colorPluginTag")) {
|
||||
Logger rootLogger = ((Logger) LogManager.getRootLogger());
|
||||
|
||||
ColorPluginAppender pluginAppender = new ColorPluginAppender(terminalAppender, getConfig());
|
||||
Map<String, String> colors = Maps.newHashMap();
|
||||
for (Map.Entry<String, Object> entry : getConfig().getValues(false).entrySet()) {
|
||||
if (!entry.getKey().startsWith("P-")) {
|
||||
continue;
|
||||
}
|
||||
|
||||
colors.put(entry.getKey().replace("P-", ""), (String) entry.getValue());
|
||||
ColorPluginAppender pluginAppender = new ColorPluginAppender(terminalAppender, getConfig());
|
||||
Map<String, String> colors = Maps.newHashMap();
|
||||
for (Map.Entry<String, Object> entry : getConfig().getValues(false).entrySet()) {
|
||||
if (!entry.getKey().startsWith("P-")) {
|
||||
continue;
|
||||
}
|
||||
|
||||
pluginAppender.initPluginColors(colors, getConfig().getString("PLUGIN"));
|
||||
pluginAppender.start();
|
||||
|
||||
rootLogger.removeAppender(terminalAppender);
|
||||
rootLogger.addAppender(pluginAppender);
|
||||
colors.put(entry.getKey().replace("P-", ""), (String) entry.getValue());
|
||||
}
|
||||
|
||||
pluginAppender.initPluginColors(colors, getConfig().getString("PLUGIN"));
|
||||
CommonLogInstaller.installAppender(pluginAppender, TERMINAL_NAME);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ import java.util.Set;
|
|||
import org.fusesource.jansi.Ansi;
|
||||
import org.fusesource.jansi.Ansi.Attribute;
|
||||
import org.fusesource.jansi.Ansi.Color;
|
||||
import org.fusesource.jansi.AnsiRenderer;
|
||||
import org.fusesource.jansi.AnsiRenderer.Code;
|
||||
|
||||
public class CommonFormatter {
|
||||
|
||||
|
@ -99,7 +99,7 @@ public class CommonFormatter {
|
|||
String[] formatParts = pluginFormat.split(" ");
|
||||
Ansi ansi = Ansi.ansi();
|
||||
for (String format : formatParts) {
|
||||
for (AnsiRenderer.Code ansiCode : AnsiRenderer.Code.values()) {
|
||||
for (Code ansiCode : Code.values()) {
|
||||
if (ansiCode.name().equalsIgnoreCase(format)) {
|
||||
if (ansiCode.isAttribute()) {
|
||||
ansi.a(ansiCode.getAttribute());
|
||||
|
@ -136,7 +136,7 @@ public class CommonFormatter {
|
|||
continue;
|
||||
}
|
||||
|
||||
for (Ansi.Color color : Ansi.Color.values()) {
|
||||
for (Color color : Color.values()) {
|
||||
if (format.equalsIgnoreCase(color.name())) {
|
||||
ansi.fg(color);
|
||||
break;
|
||||
|
|
|
@ -8,6 +8,7 @@ import java.nio.charset.Charset;
|
|||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.core.Appender;
|
||||
import org.apache.logging.log4j.core.Layout;
|
||||
import org.apache.logging.log4j.core.Logger;
|
||||
import org.apache.logging.log4j.core.LoggerContext;
|
||||
import org.apache.logging.log4j.core.config.Configuration;
|
||||
import org.apache.logging.log4j.core.config.DefaultConfiguration;
|
||||
|
@ -34,6 +35,15 @@ public class CommonLogInstaller {
|
|||
}
|
||||
}
|
||||
|
||||
public static void installAppender(Appender colorAppender, String terminalName) {
|
||||
Logger rootLogger = (Logger) LogManager.getRootLogger();
|
||||
|
||||
colorAppender.start();
|
||||
|
||||
rootLogger.removeAppender(getTerminalAppender(terminalName));
|
||||
rootLogger.addAppender(colorAppender);
|
||||
}
|
||||
|
||||
public static void setLayout(Layout<? extends Serializable> layout, Appender terminalAppender)
|
||||
throws ReflectiveOperationException {
|
||||
Field field = terminalAppender.getClass().getSuperclass().getDeclaredField("layout");
|
||||
|
|
|
@ -12,7 +12,6 @@ import ninja.leaping.configurate.loader.ConfigurationLoader;
|
|||
import ninja.leaping.configurate.objectmapping.ObjectMapper;
|
||||
import ninja.leaping.configurate.objectmapping.ObjectMappingException;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.core.Appender;
|
||||
import org.apache.logging.log4j.core.layout.PatternLayout;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -21,7 +20,7 @@ import org.spongepowered.api.event.Listener;
|
|||
import org.spongepowered.api.event.game.state.GamePreInitializationEvent;
|
||||
import org.spongepowered.api.plugin.Plugin;
|
||||
|
||||
@Plugin(id = "colorconsole", name = "ColorConsole", version = "1.9"
|
||||
@Plugin(id = "colorconsole", name = "ColorConsole", version = "2.2"
|
||||
, url = "https://github.com/games647/ColorConsole/"
|
||||
, description = "Print colorful console messages depending on the logging level")
|
||||
public class ColorConsoleSponge {
|
||||
|
@ -100,16 +99,9 @@ public class ColorConsoleSponge {
|
|||
logger.warn("Cannot install log format", ex);
|
||||
}
|
||||
|
||||
if (configMapper.getInstance().isColorPluginTag()) {
|
||||
org.apache.logging.log4j.core.Logger rootLogger = ((org.apache.logging.log4j.core.Logger) LogManager
|
||||
.getRootLogger());
|
||||
ColorPluginAppender pluginAppender = new ColorPluginAppender(terminalAppender, getConfig());
|
||||
pluginAppender.initPluginColors(getConfig().getPluginColors(), getConfig().getDefaultPluginColor());
|
||||
|
||||
ColorPluginAppender pluginAppender = new ColorPluginAppender(terminalAppender, getConfig());
|
||||
pluginAppender.initPluginColors(getConfig().getPluginColors(), getConfig().getDefaultPluginColor());
|
||||
pluginAppender.start();
|
||||
|
||||
rootLogger.removeAppender(terminalAppender);
|
||||
rootLogger.addAppender(pluginAppender);
|
||||
}
|
||||
CommonLogInstaller.installAppender(pluginAppender, TERMINAL_NAME);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,10 @@ colorPluginTag: true
|
|||
# Should the log message be highlighted depending on the logging level
|
||||
colorLoggingLevel: true
|
||||
|
||||
# Should the complete logging message be colored in the same style as the logging level (like ColorConsole v1).
|
||||
# If not it's using the default color (like ColorConsole v2+)
|
||||
colorMessage: false
|
||||
|
||||
# How the messages should be displayed
|
||||
#
|
||||
# Variables:
|
||||
|
|
Loading…
Reference in New Issue