diff --git a/src/main/java/me/cortex/voxy/common/Logger.java b/src/main/java/me/cortex/voxy/common/Logger.java index 79255d56..a18a9934 100644 --- a/src/main/java/me/cortex/voxy/common/Logger.java +++ b/src/main/java/me/cortex/voxy/common/Logger.java @@ -14,6 +14,30 @@ public class Logger { public static boolean SHUTUP = false; private static final org.slf4j.Logger LOGGER = LoggerFactory.getLogger("Voxy"); + + private static String callClsName() { + String className = ""; + if (INSERT_CLASS) { + var stackEntry = new Throwable().getStackTrace()[2]; + className = stackEntry.getClassName(); + var builder = new StringBuilder(); + var parts = className.split("\\."); + for (int i = 0; i < parts.length; i++) { + var part = parts[i]; + if (i < parts.length-1) {//-2 + builder.append(part.charAt(0)).append(part.charAt(part.length()-1)); + } else { + builder.append(part); + } + if (i!=parts.length-1) { + builder.append("."); + } + } + className = builder.toString(); + } + return className; + } + public static void error(Object... args) { if (SHUTUP) { return; @@ -24,8 +48,8 @@ public class Logger { throwable = (Throwable) i; } } - var stackEntry = new Throwable().getStackTrace()[1]; - String error = (INSERT_CLASS?("["+stackEntry.getClassName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")); + + String error = (INSERT_CLASS?("["+callClsName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")); LOGGER.error(error, throwable); if (VoxyCommon.IS_IN_MINECRAFT && !VoxyCommon.IS_DEDICATED_SERVER) { var instance = MinecraftClient.getInstance(); @@ -48,8 +72,7 @@ public class Logger { throwable = (Throwable) i; } } - var stackEntry = new Throwable().getStackTrace()[1]; - LOGGER.warn((INSERT_CLASS?("["+stackEntry.getClassName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")), throwable); + LOGGER.warn((INSERT_CLASS?("["+callClsName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")), throwable); } public static void info(Object... args) { @@ -62,8 +85,7 @@ public class Logger { throwable = (Throwable) i; } } - var stackEntry = new Throwable().getStackTrace()[1]; - LOGGER.info((INSERT_CLASS?("["+stackEntry.getClassName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")), throwable); + LOGGER.info((INSERT_CLASS?("["+callClsName()+"]: "):"") + Stream.of(args).map(Logger::objToString).collect(Collectors.joining(" ")), throwable); } private static String objToString(Object obj) {