geforkt von Mirrors/Paper
c75a8378a2
ASM was not meant to exposed to API consumers in the first place, and for the duration of time it has been exposed, it has also been relocated. Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
50 Zeilen
2.1 KiB
Diff
50 Zeilen
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Minecrell <minecrell@minecrell.net>
|
|
Date: Tue, 17 Jul 2018 16:42:17 +0200
|
|
Subject: [PATCH] Use asynchronous Log4j 2 loggers
|
|
|
|
|
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
|
index 34a0d6b54a15c8aa0c706541316c5d448e3d94b9..514633e01a1b5c85a4bc62bf1c3e096f4eaa5e98 100644
|
|
--- a/build.gradle.kts
|
|
+++ b/build.gradle.kts
|
|
@@ -38,6 +38,7 @@ dependencies {
|
|
}
|
|
runtimeOnly("org.xerial:sqlite-jdbc:3.34.0")
|
|
runtimeOnly("mysql:mysql-connector-java:8.0.23") // Paper
|
|
+ runtimeOnly("com.lmax:disruptor:3.4.2") // Paper
|
|
|
|
runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.1")
|
|
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.0")
|
|
diff --git a/src/main/java/com/destroystokyo/paper/log/LogFullPolicy.java b/src/main/java/com/destroystokyo/paper/log/LogFullPolicy.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..db652a1f7abc80bc751fd94925abaec58ab1a563
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/log/LogFullPolicy.java
|
|
@@ -0,0 +1,17 @@
|
|
+package com.destroystokyo.paper.log;
|
|
+
|
|
+import org.apache.logging.log4j.Level;
|
|
+import org.apache.logging.log4j.core.async.AsyncQueueFullPolicy;
|
|
+import org.apache.logging.log4j.core.async.EventRoute;
|
|
+
|
|
+public final class LogFullPolicy implements AsyncQueueFullPolicy {
|
|
+
|
|
+ /*
|
|
+ * Prevents log calls being logged out of order when the log queue is full.
|
|
+ */
|
|
+
|
|
+ @Override
|
|
+ public EventRoute getRoute(final long backgroundThreadId, final Level level) {
|
|
+ return EventRoute.ENQUEUE;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/resources/log4j2.component.properties b/src/main/resources/log4j2.component.properties
|
|
index 0694b21465fb9e4164e71862ff24b62241b191f2..30efeb5faf8e7faccf1b252fa0ed6a9fc31c40a7 100644
|
|
--- a/src/main/resources/log4j2.component.properties
|
|
+++ b/src/main/resources/log4j2.component.properties
|
|
@@ -1 +1,3 @@
|
|
+Log4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
|
|
+log4j2.AsyncQueueFullPolicy="com.destroystokyo.paper.log.LogFullPolicy"
|
|
log4j.skipJansi=true
|