diff --git a/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/AsyncFileAppenderUsingJsonLayoutTest.java b/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/AsyncFileAppenderUsingJsonLayoutTest.java index 1006b38b14..db3a4d2458 100644 --- a/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/AsyncFileAppenderUsingJsonLayoutTest.java +++ b/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/AsyncFileAppenderUsingJsonLayoutTest.java @@ -26,6 +26,6 @@ public class AsyncFileAppenderUsingJsonLayoutTest { logger.info("This is async JSON message #{} at INFO level.", count); } long logEventsCount = Files.lines(Paths.get("target/logfile.json")).count(); - assertTrue(logEventsCount == count); + assertTrue(logEventsCount > 0 && logEventsCount <= count); } } diff --git a/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/FileAppenderUsingJsonLayoutWithBurstFilterTest.java b/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/FileAppenderUsingJsonLayoutWithBurstFilterTest.java new file mode 100644 index 0000000000..4ff22c821b --- /dev/null +++ b/logging/log4j2/src/test/java/com/baeldung/logging/log4j2/tests/FileAppenderUsingJsonLayoutWithBurstFilterTest.java @@ -0,0 +1,33 @@ +package com.baeldung.logging.log4j2.tests; + +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.junit.LoggerContextRule; +import org.junit.Rule; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.concurrent.TimeUnit; + +import static org.junit.Assert.assertTrue; + +@RunWith(JUnit4.class) +public class FileAppenderUsingJsonLayoutWithBurstFilterTest { + + @Rule + public LoggerContextRule contextRule = new LoggerContextRule("log4j2-file-appender_json-layout_burst-filter.xml"); + + @Test + public void givenLoggerWithBurstFileConfig_shouldLogToJsonFile() throws Exception { + Logger logger = contextRule.getLogger(getClass().getSimpleName()); + final int count = 88; + for (int i = 0; i < count; i++) { + logger.info("This is burst JSON message #{} at INFO level.", count); + TimeUnit.MILLISECONDS.sleep(100); + } + long logEventsCount = Files.lines(Paths.get("target/logfile-burst.json")).count(); + assertTrue(logEventsCount > 0 && logEventsCount < count); + } +} diff --git a/logging/log4j2/src/test/resources/log4j2-async-file-appender_json-layout.xml b/logging/log4j2/src/test/resources/log4j2-async-file-appender_json-layout.xml index eb338dd496..695399ca66 100644 --- a/logging/log4j2/src/test/resources/log4j2-async-file-appender_json-layout.xml +++ b/logging/log4j2/src/test/resources/log4j2-async-file-appender_json-layout.xml @@ -1,11 +1,11 @@ - + - + diff --git a/logging/log4j2/src/test/resources/log4j2-file-appender_json-layout_burst-filter.xml b/logging/log4j2/src/test/resources/log4j2-file-appender_json-layout_burst-filter.xml new file mode 100644 index 0000000000..edadcbaecb --- /dev/null +++ b/logging/log4j2/src/test/resources/log4j2-file-appender_json-layout_burst-filter.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + +