BAEL-41: Added including tests:
- marker filter
This commit is contained in:
parent
8bab22bdca
commit
b04ede30f5
@ -1,6 +1,8 @@
|
|||||||
package com.baeldung.logging.log4j2.tests;
|
package com.baeldung.logging.log4j2.tests;
|
||||||
|
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
import org.apache.logging.log4j.Marker;
|
||||||
|
import org.apache.logging.log4j.MarkerManager;
|
||||||
import org.apache.logging.log4j.junit.LoggerContextRule;
|
import org.apache.logging.log4j.junit.LoggerContextRule;
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
@ -16,12 +18,21 @@ public class ConsoleAppenderUsingPatternLayoutWithColorsTest {
|
|||||||
@Test
|
@Test
|
||||||
public void givenLoggerWithConsoleConfig_shouldLogToConsoleInColors() throws Exception {
|
public void givenLoggerWithConsoleConfig_shouldLogToConsoleInColors() throws Exception {
|
||||||
Logger logger = contextRule.getLogger(getClass().getSimpleName());
|
Logger logger = contextRule.getLogger(getClass().getSimpleName());
|
||||||
logger.trace("This is a colored message at TRACE level. This is the minimum visible level.");
|
logger.trace("This is a colored message at TRACE level.");
|
||||||
logger.debug("This is a colored message at DEBUG level.");
|
logger.debug("This is a colored message at DEBUG level. This is the minimum visible level.");
|
||||||
logger.info("This is a colored message at INFO level.");
|
logger.info("This is a colored message at INFO level.");
|
||||||
logger.warn("This is a colored message at WARN level.");
|
logger.warn("This is a colored message at WARN level.");
|
||||||
Exception e = new RuntimeException("This is only a test!");
|
Exception e = new RuntimeException("This is only a test!");
|
||||||
logger.error("This is a colored message at ERROR level.", e);
|
logger.error("This is a colored message at ERROR level.", e);
|
||||||
logger.fatal("This is a colored message at FATAL level.");
|
logger.fatal("This is a colored message at FATAL level.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenLoggerWithConsoleConfig_shouldFilterByMarker() throws Exception {
|
||||||
|
Logger logger = contextRule.getLogger("ConnTrace");
|
||||||
|
Marker appError = MarkerManager.getMarker("APP_ERROR");
|
||||||
|
logger.error(appError, "This marker message at ERROR level should be hidden.");
|
||||||
|
Marker connectionTrace = MarkerManager.getMarker("CONN_TRACE");
|
||||||
|
logger.trace(connectionTrace, "This is a marker message at TRACE level.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
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);
|
|
||||||
}
|
|
||||||
}
|
|
@ -3,6 +3,7 @@
|
|||||||
<Appenders>
|
<Appenders>
|
||||||
<File name="JSONLogfileAppender" fileName="target/logfile.json">
|
<File name="JSONLogfileAppender" fileName="target/logfile.json">
|
||||||
<JSONLayout compact="true" eventEol="true"/>
|
<JSONLayout compact="true" eventEol="true"/>
|
||||||
|
<BurstFilter level="INFO" rate="2" maxBurst="10"/>
|
||||||
</File>
|
</File>
|
||||||
<Async name="AsyncAppender" bufferSize="80">
|
<Async name="AsyncAppender" bufferSize="80">
|
||||||
<AppenderRef ref="JSONLogfileAppender"/>
|
<AppenderRef ref="JSONLogfileAppender"/>
|
||||||
|
@ -2,9 +2,16 @@
|
|||||||
<Configuration status="WARN" xmlns:xi="http://www.w3.org/2001/XInclude">
|
<Configuration status="WARN" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||||
<Appenders>
|
<Appenders>
|
||||||
<xi:include href="log4j2-includes/console-appender_pattern-layout_colored.xml"/>
|
<xi:include href="log4j2-includes/console-appender_pattern-layout_colored.xml"/>
|
||||||
|
<Console name="ConsoleRedAppender" target="SYSTEM_OUT">
|
||||||
|
<PatternLayout pattern="%style{%message}{red}%n"/>
|
||||||
|
<MarkerFilter marker="CONN_TRACE"/>
|
||||||
|
</Console>
|
||||||
</Appenders>
|
</Appenders>
|
||||||
<Loggers>
|
<Loggers>
|
||||||
<Root level="TRACE">
|
<Logger name="ConnTrace" level="TRACE" additivity="false">
|
||||||
|
<AppenderRef ref="ConsoleRedAppender"/>
|
||||||
|
</Logger>
|
||||||
|
<Root level="DEBUG">
|
||||||
<AppenderRef ref="ConsoleAppender"/>
|
<AppenderRef ref="ConsoleAppender"/>
|
||||||
</Root>
|
</Root>
|
||||||
</Loggers>
|
</Loggers>
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<Configuration status="WARN">
|
|
||||||
<Appenders>
|
|
||||||
<File name="JSONLogfileAppender" fileName="target/logfile-burst.json">
|
|
||||||
<JSONLayout compact="true" eventEol="true"/>
|
|
||||||
<BurstFilter level="INFO" rate="2" maxBurst="10"/>
|
|
||||||
</File>
|
|
||||||
</Appenders>
|
|
||||||
<Loggers>
|
|
||||||
<Root level="INFO">
|
|
||||||
<AppenderRef ref="JSONLogfileAppender"/>
|
|
||||||
</Root>
|
|
||||||
</Loggers>
|
|
||||||
</Configuration>
|
|
Loading…
x
Reference in New Issue
Block a user