From 7b1855d76fb6b669831d41f304c994343f41bc7f Mon Sep 17 00:00:00 2001 From: XiaoMoMi Date: Sat, 29 Mar 2025 00:57:32 +0800 Subject: [PATCH] fix filter --- .../craftengine/fabric/util/LoggerFilter.java | 1 + .../core/plugin/config/ConfigManager.java | 2 ++ .../logger/filter/DisconnectLogFilter.java | 18 +++++++++++++++--- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/client-mod/src/main/java/net/momirealms/craftengine/fabric/util/LoggerFilter.java b/client-mod/src/main/java/net/momirealms/craftengine/fabric/util/LoggerFilter.java index 2dc648a6a..99f9aec0f 100644 --- a/client-mod/src/main/java/net/momirealms/craftengine/fabric/util/LoggerFilter.java +++ b/client-mod/src/main/java/net/momirealms/craftengine/fabric/util/LoggerFilter.java @@ -6,6 +6,7 @@ import org.apache.logging.log4j.core.Logger; import org.apache.logging.log4j.core.filter.AbstractFilter; public class LoggerFilter { + public static void filter() { Logger rootLogger = (Logger) LogManager.getRootLogger(); rootLogger.addFilter(new AbstractFilter() { diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/ConfigManager.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/ConfigManager.java index 73ffa8ba7..46586334c 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/config/ConfigManager.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/config/ConfigManager.java @@ -16,6 +16,7 @@ import net.momirealms.craftengine.core.plugin.CraftEngine; import net.momirealms.craftengine.core.plugin.PluginProperties; import net.momirealms.craftengine.core.plugin.Reloadable; import net.momirealms.craftengine.core.plugin.locale.TranslationManager; +import net.momirealms.craftengine.core.plugin.logger.filter.DisconnectLogFilter; import net.momirealms.craftengine.core.util.AdventureHelper; import net.momirealms.craftengine.core.util.MiscUtils; import net.momirealms.craftengine.core.util.ReflectionUtils; @@ -183,6 +184,7 @@ public class ConfigManager implements Reloadable { metrics = config.getBoolean("metrics", false); checkUpdate = config.getBoolean("update-checker", false); filterConfigurationPhaseDisconnect = config.getBoolean("filter-configuration-phase-disconnect", false); + DisconnectLogFilter.instance().setEnable(filterConfigurationPhaseDisconnect); // resource pack resource_pack$override_uniform_font = config.getBoolean("resource-pack.override-uniform-font", false); diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/logger/filter/DisconnectLogFilter.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/logger/filter/DisconnectLogFilter.java index 4e9e8136e..68338896a 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/plugin/logger/filter/DisconnectLogFilter.java +++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/logger/filter/DisconnectLogFilter.java @@ -1,7 +1,5 @@ package net.momirealms.craftengine.core.plugin.logger.filter; - -import net.momirealms.craftengine.core.plugin.config.ConfigManager; import org.apache.logging.log4j.core.Filter; import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.config.Node; @@ -13,10 +11,24 @@ import org.apache.logging.log4j.core.impl.MutableLogEvent; public class DisconnectLogFilter extends AbstractFilter { private static final String TARGET_LOGGER = "net.minecraft.server.network.ServerConfigurationPacketListenerImpl"; private static final String TARGET_MESSAGE_PATTERN = "{} lost connection: {}"; + private static DisconnectLogFilter instance; + private boolean enable = false; + + public DisconnectLogFilter() { + instance = this; + } + + public static DisconnectLogFilter instance() { + return instance; + } + + public void setEnable(boolean enable) { + this.enable = enable; + } @Override public Result filter(LogEvent event) { - if (!ConfigManager.filterConfigurationPhaseDisconnect()) { + if (!enable) { return Result.NEUTRAL; }