Repository: logging-log4j2 Updated Branches: refs/heads/master cbeab8131 -> 2f612f40c
Refactor tests stopping the LogManager's Core LoggerContext into a utility class. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/2f612f40 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/2f612f40 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/2f612f40 Branch: refs/heads/master Commit: 2f612f40c9a577cd1ac9f4712f7b15e04d8dcf43 Parents: cbeab81 Author: Gary Gregory <[email protected]> Authored: Wed Mar 25 16:52:33 2015 -0700 Committer: Gary Gregory <[email protected]> Committed: Wed Mar 25 16:52:33 2015 -0700 ---------------------------------------------------------------------- .../logging/log4j/core/CoreLoggerContexts.java | 51 ++++++++++++++++++++ .../apache/logging/log4j/core/LoggerTest.java | 7 ++- ...ingRandomAccessFileAppenderRolloverTest.java | 13 ++--- .../appender/XmlCompactFileAppenderTest.java | 3 +- ...lCompactFileAsyncAppenderValidationTest.java | 5 +- .../appender/XmlCompleteFileAppenderTest.java | 11 +++-- .../core/appender/XmlFileAppenderTest.java | 11 +++-- .../XmlRandomAccessFileAppenderTest.java | 11 +++-- .../async/AsyncLoggerConfigAutoFlushTest.java | 13 +++-- .../log4j/core/async/AsyncLoggerConfigTest.java | 8 ++- .../core/async/AsyncLoggerConfigTest2.java | 11 +++-- .../AsyncLoggerConfigUseAfterShutdownTest.java | 3 +- .../core/async/AsyncLoggerContextTest.java | 3 +- .../core/async/AsyncLoggerLocationTest.java | 11 +++-- .../log4j/core/async/AsyncLoggerTest.java | 11 +++-- .../async/AsyncLoggerTestCachedThreadName.java | 11 +++-- .../AsyncLoggerTestUncachedThreadName.java | 11 +++-- .../async/AsyncLoggerThreadContextTest.java | 11 +++-- .../async/AsyncLoggerTimestampMessageTest.java | 11 +++-- .../async/AsyncLoggerUseAfterShutdownTest.java | 3 +- .../log4j/core/async/perftest/RunLog4j2.java | 3 +- 21 files changed, 145 insertions(+), 77 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/CoreLoggerContexts.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CoreLoggerContexts.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CoreLoggerContexts.java new file mode 100644 index 0000000..ca2a0ab --- /dev/null +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CoreLoggerContexts.java @@ -0,0 +1,51 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache license, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the license for the specific language governing permissions and + * limitations under the license. + */ + +package org.apache.logging.log4j.core; + +import java.io.File; + +import org.apache.logging.log4j.LogManager; + +public class CoreLoggerContexts { + + private static void sleepAndCheck(final File checkFilePresence) throws InterruptedException { + Thread.sleep(100); + if (checkFilePresence.length() == 0) { + Thread.sleep(500); + } + } + + public static void stopLoggerContext() { + ((LifeCycle) LogManager.getContext()).stop(); // stops async thread + } + + public static void stopLoggerContext(final boolean currentContext) { + ((LifeCycle) LogManager.getContext(currentContext)).stop(); // stops async thread + } + + public static void stopLoggerContext(final boolean currentContext, final File checkFilePresence) throws InterruptedException { + stopLoggerContext(currentContext); + sleepAndCheck(checkFilePresence); + } + + public static void stopLoggerContext(final File checkFilePresence) throws InterruptedException { + stopLoggerContext(); + sleepAndCheck(checkFilePresence); + } + +} http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java index 2e27bf4..70f4b70 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java @@ -207,8 +207,11 @@ public class LoggerTest { logger.debug("Reconfigure"); } Thread.sleep(100); - if (context.getConfiguration() != oldConfig) { - Thread.sleep(500); + for (int i = 0; i < 20; i++) { + if (context.getConfiguration() == oldConfig) { + break; + } + Thread.sleep(50); } final Configuration newConfig = context.getConfiguration(); assertNotNull("No configuration", newConfig); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppenderRolloverTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppenderRolloverTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppenderRolloverTest.java index b4ac366..dd869e7 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppenderRolloverTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppenderRolloverTest.java @@ -23,6 +23,7 @@ import java.util.Arrays; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; @@ -40,10 +41,10 @@ public class RollingRandomAccessFileAppenderRolloverTest { @Test public void testRollover() throws Exception { - final File f = new File("target", "RollingRandomAccessFileAppenderTest.log"); + final File file = new File("target", "RollingRandomAccessFileAppenderTest.log"); // System.out.println(f.getAbsolutePath()); final File after1 = new File("target", "afterRollover-1.log"); - f.delete(); + file.delete(); after1.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); @@ -51,7 +52,7 @@ public class RollingRandomAccessFileAppenderRolloverTest { log.info(msg); Thread.sleep(50); - BufferedReader reader = new BufferedReader(new FileReader(f)); + BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); assertTrue(line1.contains(msg)); reader.close(); @@ -68,7 +69,7 @@ public class RollingRandomAccessFileAppenderRolloverTest { final String trigger = "This message triggers rollover."; log.warn(trigger); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(); // stop async thread final int MAX_ATTEMPTS = 50; int count = 0; @@ -78,12 +79,12 @@ public class RollingRandomAccessFileAppenderRolloverTest { assertTrue("afterRollover-1.log created", after1.exists()); - reader = new BufferedReader(new FileReader(f)); + reader = new BufferedReader(new FileReader(file)); final String new1 = reader.readLine(); assertTrue("after rollover only new msg", new1.contains(trigger)); assertNull("No more lines", reader.readLine()); reader.close(); - f.delete(); + file.delete(); reader = new BufferedReader(new FileReader(after1)); final String old1 = reader.readLine(); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAppenderTest.java index 943f1cd..7ac57ca 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAppenderTest.java @@ -22,6 +22,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; @@ -47,7 +48,7 @@ public class XmlCompactFileAppenderTest { final Logger log = LogManager.getLogger("com.foo.Bar"); final String logMsg = "Message flushed with immediate flush=false"; log.info(logMsg); - ((LifeCycle) LogManager.getContext(false)).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(false, file); // stop async thread final BufferedReader reader = new BufferedReader(new FileReader(file)); String line1; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAsyncAppenderValidationTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAsyncAppenderValidationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAsyncAppenderValidationTest.java index 4e5f212..2311eaf 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAsyncAppenderValidationTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompactFileAsyncAppenderValidationTest.java @@ -30,6 +30,7 @@ import javax.xml.validation.Validator; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; import org.junit.Ignore; @@ -56,7 +57,7 @@ public class XmlCompactFileAsyncAppenderValidationTest { log.warn("Message 1"); log.info("Message 2"); log.debug("Message 3"); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread this.validateXmlSchema(file); } @@ -64,7 +65,7 @@ public class XmlCompactFileAsyncAppenderValidationTest { public void validateXmlSchemaNoEvents() throws Exception { final File file = new File("target", "XmlCompactFileAsyncAppenderValidationTest.log.xml"); file.delete(); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread this.validateXmlSchema(file); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompleteFileAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompleteFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompleteFileAppenderTest.java index c4b43da..9917e28 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompleteFileAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlCompleteFileAppenderTest.java @@ -22,6 +22,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; @@ -42,15 +43,15 @@ public class XmlCompleteFileAppenderTest { @Test public void testFlushAtEndOfBatch() throws Exception { - final File f = new File("target", "XmlCompleteFileAppenderTest.log"); + final File file = new File("target", "XmlCompleteFileAppenderTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String logMsg = "Message flushed with immediate flush=false"; log.info(logMsg); - ((LifeCycle) LogManager.getContext(false)).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(false, file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); String line1; String line2; String line3; @@ -62,7 +63,7 @@ public class XmlCompleteFileAppenderTest { line4 = reader.readLine(); } finally { reader.close(); - f.delete(); + file.delete(); } assertNotNull("line1", line1); final String msg1 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlFileAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlFileAppenderTest.java index 4e991c7..43b3ef7 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlFileAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlFileAppenderTest.java @@ -22,6 +22,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; @@ -42,15 +43,15 @@ public class XmlFileAppenderTest { @Test public void testFlushAtEndOfBatch() throws Exception { - final File f = new File("target", "XmlFileAppenderTest.log"); + final File file = new File("target", "XmlFileAppenderTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String logMsg = "Message flushed with immediate flush=false"; log.info(logMsg); - ((LifeCycle) LogManager.getContext(false)).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(false, file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); String line1; String line2; String line3; @@ -60,7 +61,7 @@ public class XmlFileAppenderTest { line3 = reader.readLine(); } finally { reader.close(); - f.delete(); + file.delete(); } assertNotNull("line1", line1); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlRandomAccessFileAppenderTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlRandomAccessFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlRandomAccessFileAppenderTest.java index e40243b..5c3ffe2 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlRandomAccessFileAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/XmlRandomAccessFileAppenderTest.java @@ -22,6 +22,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; @@ -44,15 +45,15 @@ public class XmlRandomAccessFileAppenderTest { @Test @Ignore public void testFlushAtEndOfBatch() throws Exception { - final File f = new File("target", "XmlRandomAccessFileAppenderTest.log"); + final File file = new File("target", "XmlRandomAccessFileAppenderTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String logMsg = "Message flushed with immediate flush=false"; log.info(logMsg); - ((LifeCycle) LogManager.getContext(false)).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(false, file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); String line1; String line2; String line3; @@ -64,7 +65,7 @@ public class XmlRandomAccessFileAppenderTest { line4 = reader.readLine(); } finally { reader.close(); - f.delete(); + file.delete(); } assertNotNull("line1", line1); final String msg1 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigAutoFlushTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigAutoFlushTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigAutoFlushTest.java index b4c9301..5df1000 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigAutoFlushTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigAutoFlushTest.java @@ -22,7 +22,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; import org.junit.Test; @@ -39,18 +39,17 @@ public class AsyncLoggerConfigAutoFlushTest { @Test public void testFlushAtEndOfBatch() throws Exception { - final File f = new File("target", "AsyncLoggerConfigAutoFlushTest.log"); - assertTrue("Deleted old file before test", !f.exists() || f.delete()); + final File file = new File("target", "AsyncLoggerConfigAutoFlushTest.log"); + assertTrue("Deleted old file before test", !file.exists() || file.delete()); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Message flushed with immediate flush=false"; log.info(msg); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread - - final BufferedReader reader = new BufferedReader(new FileReader(f)); + CoreLoggerContexts.stopLoggerContext(file); // stop async thread + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertTrue("line1 correct", line1.contains(msg)); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest.java index f4d8171..13d212a 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest.java @@ -23,6 +23,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; import org.junit.Test; @@ -44,11 +45,8 @@ public class AsyncLoggerConfigTest { final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Additive logging: 2 for the price of 1!"; log.info(msg); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread - if (file.length() == 0) { - Thread.sleep(500); - } - + CoreLoggerContexts.stopLoggerContext(file); // stop async thread + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); final String line2 = reader.readLine(); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest2.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest2.java index 3ae67fc..5d12f38 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest2.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest2.java @@ -24,6 +24,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.LoggerContext; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.junit.BeforeClass; import org.junit.Test; @@ -40,8 +41,8 @@ public class AsyncLoggerConfigTest2 { public void testConsecutiveReconfigure() throws Exception { System.setProperty(ConfigurationFactory.CONFIGURATION_FILE_PROPERTY, "AsyncLoggerConfigTest2.xml"); - final File f = new File("target", "AsyncLoggerConfigTest2.log"); - assertTrue("Deleted old file before test", !f.exists() || f.delete()); + final File file = new File("target", "AsyncLoggerConfigTest2.log"); + assertTrue("Deleted old file before test", !file.exists() || file.delete()); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Message before reconfig"; @@ -53,13 +54,13 @@ public class AsyncLoggerConfigTest2 { final String msg2 = "Message after reconfig"; log.info(msg2); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); final String line2 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertNotNull("line2", line2); assertTrue("line1 " + line1, line1.contains(msg)); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigUseAfterShutdownTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigUseAfterShutdownTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigUseAfterShutdownTest.java index 09e1b82..c3eee0d 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigUseAfterShutdownTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigUseAfterShutdownTest.java @@ -19,6 +19,7 @@ package org.apache.logging.log4j.core.async; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.message.SimpleMessage; @@ -37,7 +38,7 @@ public class AsyncLoggerConfigUseAfterShutdownTest { public void testNoErrorIfLogAfterShutdown() throws Exception { final Logger log = LogManager.getLogger("com.foo.Bar"); log.info("some message"); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(); // stop async thread // call the #logMessage() method to bypass the isEnabled check: // before the LOG4J2-639 fix this would throw a NPE http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerContextTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerContextTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerContextTest.java index 4645198..2e28283 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerContextTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerContextTest.java @@ -18,6 +18,7 @@ package org.apache.logging.log4j.core.async; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.LoggerContext; import org.junit.Test; @@ -32,6 +33,6 @@ public class AsyncLoggerContextTest { new LoggerContext("a"), "a", null); assertTrue(logger instanceof AsyncLogger); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(); // stop async thread } } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerLocationTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerLocationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerLocationTest.java index e75df9f..876a314 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerLocationTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerLocationTest.java @@ -23,6 +23,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -49,18 +50,18 @@ public class AsyncLoggerLocationTest { @Test public void testAsyncLogWritesToLog() throws Exception { - final File f = new File("target", "AsyncLoggerLocationTest.log"); + final File file = new File("target", "AsyncLoggerLocationTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg with location"; log.info(msg); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertTrue("line1 correct", line1.contains(msg)); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTest.java index 53e4be0..7bd78d8 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTest.java @@ -23,6 +23,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -49,18 +50,18 @@ public class AsyncLoggerTest { @Test public void testAsyncLogWritesToLog() throws Exception { - final File f = new File("target", "AsyncLoggerTest.log"); + final File file = new File("target", "AsyncLoggerTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg"; log.info(msg, new InternalError("this is not a real error")); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertTrue("line1 correct", line1.contains(msg)); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestCachedThreadName.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestCachedThreadName.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestCachedThreadName.java index f9d2c0c..7178c67 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestCachedThreadName.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestCachedThreadName.java @@ -23,6 +23,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -49,23 +50,23 @@ public class AsyncLoggerTestCachedThreadName { @Test public void testAsyncLogUsesCachedThreadName() throws Exception { - final File f = new File("target", "AsyncLoggerTest.log"); + final File file = new File("target", "AsyncLoggerTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg"; log.info(msg); Thread.currentThread().setName("MODIFIED-THREADNAME"); log.info(msg); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); final String line2 = reader.readLine(); // System.out.println(line1); // System.out.println(line2); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertNotNull("line2", line2); assertTrue("line1", line1.endsWith(" INFO c.f.Bar [main] Async logger msg ")); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestUncachedThreadName.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestUncachedThreadName.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestUncachedThreadName.java index b4b4fb9..05ae428 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestUncachedThreadName.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTestUncachedThreadName.java @@ -23,6 +23,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -50,23 +51,23 @@ public class AsyncLoggerTestUncachedThreadName { @Test public void testAsyncLogUsesCurrentThreadName() throws Exception { - final File f = new File("target", "AsyncLoggerTest.log"); + final File file = new File("target", "AsyncLoggerTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg"; log.info(msg); Thread.currentThread().setName("MODIFIED-THREADNAME"); log.info(msg); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); final String line2 = reader.readLine(); // System.out.println(line1); // System.out.println(line2); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertNotNull("line2", line2); assertTrue("line1", line1.endsWith(" INFO c.f.Bar [main] Async logger msg ")); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerThreadContextTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerThreadContextTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerThreadContextTest.java index de23da8..9dc1f0f 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerThreadContextTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerThreadContextTest.java @@ -24,6 +24,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.ThreadContext; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; import org.apache.logging.log4j.util.Strings; @@ -50,9 +51,9 @@ public class AsyncLoggerThreadContextTest { @Test public void testAsyncLogWritesToLog() throws Exception { - final File f = new File("target", "AsyncLoggerTest.log"); + final File file = new File("target", "AsyncLoggerTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); ThreadContext.push("stackvalue"); ThreadContext.put("KEY", "mapvalue"); @@ -60,12 +61,12 @@ public class AsyncLoggerThreadContextTest { final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg"; log.info(msg, new InternalError("this is not a real error")); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull("line1", line1); assertTrue("line1 correct", line1.contains(msg)); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTimestampMessageTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTimestampMessageTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTimestampMessageTest.java index 39b4511..a148427 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTimestampMessageTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerTimestampMessageTest.java @@ -26,6 +26,7 @@ import java.io.FileReader; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LifeCycle; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Clock; import org.apache.logging.log4j.core.util.ClockFactory; @@ -65,17 +66,17 @@ public class AsyncLoggerTimestampMessageTest { @Test public void testAsyncLogWritesToLog() throws Exception { - final File f = new File("target", "AsyncLoggerTimestampMessageTest.log"); + final File file = new File("target", "AsyncLoggerTimestampMessageTest.log"); // System.out.println(f.getAbsolutePath()); - f.delete(); + file.delete(); final Logger log = LogManager.getLogger("com.foo.Bar"); log.info(new TimeMsg("Async logger msg with embedded timestamp", 123456789000L)); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(file); // stop async thread - final BufferedReader reader = new BufferedReader(new FileReader(f)); + final BufferedReader reader = new BufferedReader(new FileReader(file)); final String line1 = reader.readLine(); reader.close(); - f.delete(); + file.delete(); assertNotNull(line1); assertTrue("line1 correct", line1.equals("123456789000 Async logger msg with embedded timestamp")); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerUseAfterShutdownTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerUseAfterShutdownTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerUseAfterShutdownTest.java index 14630a4..741dc91 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerUseAfterShutdownTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerUseAfterShutdownTest.java @@ -19,6 +19,7 @@ package org.apache.logging.log4j.core.async; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.config.ConfigurationFactory; import org.apache.logging.log4j.core.util.Constants; @@ -52,7 +53,7 @@ public class AsyncLoggerUseAfterShutdownTest { final Logger log = LogManager.getLogger("com.foo.Bar"); final String msg = "Async logger msg"; log.info(msg, new InternalError("this is not a real error")); - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(); // stop async thread // call the #logMessage() method to bypass the isEnabled check: // before the LOG4J2-639 fix this would throw a NPE http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2f612f40/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/RunLog4j2.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/RunLog4j2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/RunLog4j2.java index c1c77c8..8df330f 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/RunLog4j2.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/perftest/RunLog4j2.java @@ -18,6 +18,7 @@ package org.apache.logging.log4j.core.async.perftest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.core.CoreLoggerContexts; import org.apache.logging.log4j.core.LifeCycle; import com.lmax.disruptor.collections.Histogram; @@ -61,7 +62,7 @@ public class RunLog4j2 implements IPerfTestRunner { @Override public void shutdown() { - ((LifeCycle) LogManager.getContext()).stop(); // stop async thread + CoreLoggerContexts.stopLoggerContext(); // stop async thread }
