[LOG4J2-1556] Custom Log4j threads should extend Log4jThread. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/c6ecfc45 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/c6ecfc45 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/c6ecfc45
Branch: refs/heads/LOG4J2-1349-gcfree-threadcontext Commit: c6ecfc45b1482f2d2c3b98c1520cc657f2710f41 Parents: 48117f8 Author: ggregory <ggreg...@apache.org> Authored: Wed Aug 31 13:37:19 2016 -0700 Committer: ggregory <ggreg...@apache.org> Committed: Wed Aug 31 13:37:19 2016 -0700 ---------------------------------------------------------------------- .../org/apache/logging/log4j/core/appender/AsyncAppender.java | 3 ++- .../org/apache/logging/log4j/core/net/TcpSocketManager.java | 5 +++-- .../apache/logging/log4j/core/net/server/TcpSocketServer.java | 2 +- .../logging/log4j/flume/appender/FlumePersistentManager.java | 2 +- src/changes/changes.xml | 3 +++ 5 files changed, 10 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c6ecfc45/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java index 7a449d2..7b6e985 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java @@ -43,6 +43,7 @@ import org.apache.logging.log4j.core.config.plugins.PluginElement; import org.apache.logging.log4j.core.config.plugins.PluginFactory; import org.apache.logging.log4j.core.impl.Log4jLogEvent; import org.apache.logging.log4j.core.util.Constants; +import org.apache.logging.log4j.core.util.Log4jThread; /** * Appends to one or more Appenders asynchronously. You can configure an AsyncAppender with one or more Appenders and an @@ -261,7 +262,7 @@ public final class AsyncAppender extends AbstractAppender { /** * Thread that calls the Appenders. */ - private class AsyncThread extends Thread { + private class AsyncThread extends Log4jThread { private volatile boolean shutdown = false; private final List<AppenderControl> appenders; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c6ecfc45/log4j-core/src/main/java/org/apache/logging/log4j/core/net/TcpSocketManager.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/TcpSocketManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/TcpSocketManager.java index a34ce30..e4bb1a5 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/TcpSocketManager.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/TcpSocketManager.java @@ -33,6 +33,7 @@ import org.apache.logging.log4j.core.Layout; import org.apache.logging.log4j.core.appender.AppenderLoggingException; import org.apache.logging.log4j.core.appender.ManagerFactory; import org.apache.logging.log4j.core.appender.OutputStreamManager; +import org.apache.logging.log4j.core.util.Log4jThread; import org.apache.logging.log4j.util.Strings; /** @@ -72,7 +73,7 @@ public class TcpSocketManager extends AbstractSocketManager { * @param port The port number on the host. * @param connectTimeoutMillis the connect timeout in milliseconds. * @param delay Reconnection interval. - * @param immediateFail + * @param immediateFail * @param layout The Layout. */ public TcpSocketManager(final String name, final OutputStream os, final Socket sock, final InetAddress inetAddress, @@ -180,7 +181,7 @@ public class TcpSocketManager extends AbstractSocketManager { /** * Handles reconnecting to a Thread. */ - private class Reconnector extends Thread { + private class Reconnector extends Log4jThread { private final CountDownLatch latch = new CountDownLatch(1); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c6ecfc45/log4j-core/src/main/java/org/apache/logging/log4j/core/net/server/TcpSocketServer.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/server/TcpSocketServer.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/server/TcpSocketServer.java index f32fbe8..aacdfb8 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/net/server/TcpSocketServer.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/net/server/TcpSocketServer.java @@ -45,7 +45,7 @@ public class TcpSocketServer<T extends InputStream> extends AbstractSocketServer /** * Thread that processes the events. */ - private class SocketHandler extends Thread { + private class SocketHandler extends Log4jThread { private final T inputStream; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c6ecfc45/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java ---------------------------------------------------------------------- diff --git a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java index a76065a..9442abe 100644 --- a/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java +++ b/log4j-flume-ng/src/main/java/org/apache/logging/log4j/flume/appender/FlumePersistentManager.java @@ -476,7 +476,7 @@ public class FlumePersistentManager extends FlumeAvroManager { /** * Thread that sends data to Flume and pulls it from Berkeley DB. */ - private static class WriterThread extends Thread { + private static class WriterThread extends Log4jThread { private volatile boolean shutdown = false; private final Database database; private final Environment environment; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/c6ecfc45/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index bdaaca8..2b3d14c 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -156,6 +156,9 @@ <action issue="LOG4J2-1540" dev="ggregory" type="add" due-to="Gary Gregory"> The Core AbstractManager should track its LoggerContext. </action> + <action issue="LOG4J2-1556" dev="ggregory" type="update"> + Custom Log4j threads should extend Log4jThread. + </action> <action issue="LOG4J2-1458" dev="ggregory" type="update"> Update Jackson from 2.7.5 to 2.8.0. </action>