Skip to content

Removes support for EventData #2076

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Dec 28, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions log4j-core-test/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,6 @@
<!-- Ignore less important (high rank) bugs for test artifacts -->
<spotbugs.maxRank>9</spotbugs.maxRank>

<!-- Dependency versions -->
<slf4j-ext.version>${slf4j.version}</slf4j-ext.version>

<!-- Dependency versions -->
<slf4j-ext.version>${slf4j.version}</slf4j-ext.version>

<!--
~ OSGi and JPMS options
-->
Expand Down
8 changes: 0 additions & 8 deletions log4j-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -150,8 +150,6 @@
<pax-exam.version>4.13.5</pax-exam.version>
<plexus-utils.version>3.5.1</plexus-utils.version>
<slf4j.version>2.0.9</slf4j.version>
<!-- Last version before a breaking change -->
<slf4j-ext.version>1.7.25</slf4j-ext.version>
<system-stubs.version>2.1.5</system-stubs.version>
<tomcat-juli.version>10.1.17</tomcat-juli.version>
<velocity.version>1.7</velocity.version>
Expand Down Expand Up @@ -812,12 +810,6 @@
<version>${slf4j.version}</version>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-ext</artifactId>
<version>${slf4j-ext.version}</version>
</dependency>

<dependency>
<groupId>uk.org.webcompere</groupId>
<artifactId>system-stubs-core</artifactId>
Expand Down
22 changes: 1 addition & 21 deletions log4j-slf4j-impl/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,22 +29,7 @@
<name>Apache Log4j SLF4J Binding</name>
<description>The Apache Log4j SLF4J API binding to Log4j 2 Core</description>
<properties>
<log4jParentDir>${basedir}/..</log4jParentDir>
<slf4j.version>1.7.25</slf4j.version>

<!--
~ OSGi and JPMS options
-->
<bnd-extra-package-options>
<!-- Optional dependencies -->
org.slf4j.ext;resolution:=optional
</bnd-extra-package-options>
<bnd-extra-module-options>
<!-- Optional module -->
slf4j.ext;substitute="slf4j-ext";static=true;transitive=false,
<!-- Version 1.7.25 has not module name, but 1.7.36 does -->
org.slf4j;substitute="slf4j-api"
</bnd-extra-module-options>
<slf4j.version>1.7.36</slf4j.version>
</properties>
<dependencies>
<dependency>
Expand All @@ -60,11 +45,6 @@
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-ext</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,7 @@
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.spi.ExtendedLogger;
import org.apache.logging.log4j.util.LoaderUtil;
import org.slf4j.Marker;
import org.slf4j.MarkerFactory;
import org.slf4j.spi.LocationAwareLogger;

/**
Expand All @@ -33,18 +31,13 @@ public class Log4jLogger implements LocationAwareLogger {

public static final String FQCN = Log4jLogger.class.getName();

private static final Marker EVENT_MARKER = MarkerFactory.getMarker("EVENT");
private static final EventDataConverter CONVERTER = createConverter();

private final boolean eventLogger;
private final ExtendedLogger logger;
private final String name;
private final Log4jMarkerFactory markerFactory;

public Log4jLogger(final Log4jMarkerFactory markerFactory, final ExtendedLogger logger, final String name) {
this.markerFactory = markerFactory;
this.logger = logger;
this.eventLogger = "EventLogger".equals(name);
this.name = name;
}

Expand Down Expand Up @@ -364,10 +357,7 @@ public void log(
}
final Message msg;
final Throwable actualThrowable;
if (CONVERTER != null && eventLogger && marker != null && marker.contains(EVENT_MARKER)) {
msg = CONVERTER.convertEvent(message, params, throwable);
actualThrowable = throwable != null ? throwable : msg.getThrowable();
} else if (params == null) {
if (params == null) {
msg = new SimpleMessage(message);
actualThrowable = throwable;
} else {
Expand All @@ -382,15 +372,6 @@ public String getName() {
return name;
}

private static EventDataConverter createConverter() {
try {
LoaderUtil.loadClass("org.slf4j.ext.EventData");
return new EventDataConverter();
} catch (final ClassNotFoundException cnfe) {
return null;
}
}

private static Level getLevel(final int i) {
switch (i) {
case TRACE_INT:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public void testCleanup() throws Exception {
final Log4jLoggerFactory factory = (Log4jLoggerFactory) LoggerFactory.getILoggerFactory();
factory.getLogger("test");
Set<LoggerContext> set = factory.getLoggerContexts();
final LoggerContext ctx1 = set.toArray(new LoggerContext[0])[0];
final LoggerContext ctx1 = set.toArray(LoggerContext.EMPTY_ARRAY)[0];
assertTrue("LoggerContext is not enabled for shutdown", ctx1 instanceof LifeCycle);
((LifeCycle) ctx1).stop();
set = factory.getLoggerContexts();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,8 @@

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;

import java.util.List;
import java.util.Locale;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
Expand All @@ -34,10 +32,6 @@
import org.slf4j.LoggerFactory;
import org.slf4j.MDC;
import org.slf4j.Marker;
import org.slf4j.ext.EventData;
import org.slf4j.ext.EventLogger;
import org.slf4j.ext.XLogger;
import org.slf4j.ext.XLoggerFactory;
import org.slf4j.spi.LocationAwareLogger;

/**
Expand All @@ -51,72 +45,39 @@ public class LoggerTest {
public static LoggerContextRule ctx = new LoggerContextRule(CONFIG);

Logger logger = LoggerFactory.getLogger("LoggerTest");
XLogger xlogger = XLoggerFactory.getXLogger("LoggerTest");

@Test
public void basicFlow() {
xlogger.entry();
verify("List", "o.a.l.s.LoggerTest entry MDC{}" + Strings.LINE_SEPARATOR);
xlogger.exit();
verify("List", "o.a.l.s.LoggerTest exit MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void simpleFlow() {
xlogger.entry(CONFIG);
verify("List", "o.a.l.s.LoggerTest entry with (log4j-test1.xml) MDC{}" + Strings.LINE_SEPARATOR);
xlogger.exit(0);
verify("List", "o.a.l.s.LoggerTest exit with (0) MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void throwing() {
xlogger.throwing(new IllegalArgumentException("Test Exception"));
verify("List", "o.a.l.s.LoggerTest throwing MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void catching() {
try {
throw new NullPointerException();
} catch (final Exception e) {
xlogger.catching(e);
verify("List", "o.a.l.s.LoggerTest catching MDC{}" + Strings.LINE_SEPARATOR);
}
}

@Test
public void debug() {
logger.debug("Debug message");
verify("List", "o.a.l.s.LoggerTest Debug message MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void debugNoParms() {
logger.debug("Debug message {}");
verify("List", "o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
logger.debug("Debug message {}", (Object[]) null);
verify("List", "o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
((LocationAwareLogger) logger)
.log(null, Log4jLogger.class.getName(), LocationAwareLogger.DEBUG_INT, "Debug message {}", null, null);
verify("List", "o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message {} MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void debugWithParms() {
logger.debug("Hello, {}", "World");
verify("List", "o.a.l.s.LoggerTest Hello, World MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Hello, World MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void mdc() {

MDC.put("TestYear", "2010");
logger.debug("Debug message");
verify("List", "o.a.l.s.LoggerTest Debug message MDC{TestYear=2010}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message MDC{TestYear=2010}" + Strings.LINE_SEPARATOR);
MDC.clear();
logger.debug("Debug message");
verify("List", "o.a.l.s.LoggerTest Debug message MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Debug message MDC{}" + Strings.LINE_SEPARATOR);
}

/**
Expand All @@ -126,7 +87,7 @@ public void mdc() {
public void supportsCustomSLF4JMarkers() {
final Marker marker = new CustomFlatMarker("TEST");
logger.debug(marker, "Test");
verify("List", "o.a.l.s.LoggerTest Test MDC{}" + Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Test MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
Expand All @@ -139,29 +100,7 @@ public void testRootLogger() {
@Test
public void doubleSubst() {
logger.debug("Hello, {}", "Log4j {}");
verify("List", "o.a.l.s.LoggerTest Hello, Log4j {} MDC{}" + Strings.LINE_SEPARATOR);
xlogger.debug("Hello, {}", "Log4j {}");
verify("List", "o.a.l.s.LoggerTest Hello, Log4j Log4j {} MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
public void testEventLogger() {
MDC.put("loginId", "JohnDoe");
MDC.put("ipAddress", "192.168.0.120");
MDC.put("locale", Locale.US.getDisplayName());
final EventData data = new EventData();
data.setEventType("Transfer");
data.setEventId("Audit@18060");
data.setMessage("Transfer Complete");
data.put("ToAccount", "123456");
data.put("FromAccount", "123457");
data.put("Amount", "200.00");
EventLogger.logEvent(data);
MDC.clear();
verify(
"EventLogger",
"o.a.l.s.LoggerTest Transfer [Audit@18060 Amount=\"200.00\" FromAccount=\"123457\" ToAccount=\"123456\"] Transfer Complete"
+ Strings.LINE_SEPARATOR);
verify("o.a.l.s.LoggerTest Hello, Log4j {} MDC{}" + Strings.LINE_SEPARATOR);
}

@Test
Expand Down Expand Up @@ -204,10 +143,10 @@ private ListAppender getAppenderByName(final String name) {
return listApp;
}

private void verify(final String name, final String expected) {
final ListAppender listApp = getAppenderByName(name);
private void verify(final String expected) {
final ListAppender listApp = getAppenderByName("List");
final List<String> events = listApp.getMessages();
assertTrue("Incorrect number of messages. Expected 1 Actual " + events.size(), events.size() == 1);
assertEquals("Incorrect number of messages. Expected 1 Actual " + events.size(), 1, events.size());
final String actual = events.get(0);
assertEquals("Incorrect message. Expected " + expected + ". Actual " + actual, expected, actual);
listApp.clear();
Expand All @@ -228,6 +167,5 @@ public void cleanup() {
MDC.clear();
ctx.getListAppender("List").clear();
ctx.getListAppender("UnformattedList").clear();
ctx.getListAppender("EventLogger").clear();
}
}
7 changes: 1 addition & 6 deletions log4j-slf4j2-impl/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
<version>${revision}</version>
<relativePath>../log4j-parent</relativePath>
</parent>

<artifactId>log4j-slf4j2-impl</artifactId>
<packaging>jar</packaging>
<name>Apache Log4j SLF4J 2.0 Binding</name>
Expand Down Expand Up @@ -102,12 +103,6 @@
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-ext</artifactId>
<version>${slf4j.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
Expand Down
Loading