You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ck...@apache.org on 2019/12/23 22:11:42 UTC
[logging-log4j2] branch master updated: LOG4J2-2415 - Lock
contention in classloader because of missing org.slf4j.ext.EventData (#324)
This is an automated email from the ASF dual-hosted git repository.
ckozak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
The following commit(s) were added to refs/heads/master by this push:
new ed893c2 LOG4J2-2415 - Lock contention in classloader because of missing org.slf4j.ext.EventData (#324)
ed893c2 is described below
commit ed893c297ec9c03e223dee9e42a31dc4b2b1eca3
Author: Turbanov Andrey <tu...@gmail.com>
AuthorDate: Tue Dec 24 01:11:34 2019 +0300
LOG4J2-2415 - Lock contention in classloader because of missing org.slf4j.ext.EventData (#324)
---
.../src/main/java/org/apache/logging/slf4j/Log4jLogger.java | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java b/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java
index ec4decb..1fa8080 100644
--- a/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java
+++ b/log4j-slf4j-impl/src/main/java/org/apache/logging/slf4j/Log4jLogger.java
@@ -42,16 +42,16 @@ public class Log4jLogger implements LocationAwareLogger, Serializable {
private static final long serialVersionUID = 7869000638091304316L;
private static final Marker EVENT_MARKER = MarkerFactory.getMarker("EVENT");
+ private static final EventDataConverter CONVERTER = createConverter();
+
private final boolean eventLogger;
private transient ExtendedLogger logger;
private final String name;
- private transient EventDataConverter converter;
public Log4jLogger(final ExtendedLogger logger, final String name) {
this.logger = logger;
this.eventLogger = "EventLogger".equals(name);
this.name = name;
- this.converter = createConverter();
}
@Override
@@ -363,8 +363,8 @@ public class Log4jLogger implements LocationAwareLogger, Serializable {
return;
}
final Message msg;
- if (eventLogger && marker != null && marker.contains(EVENT_MARKER) && converter != null) {
- msg = converter.convertEvent(message, params, throwable);
+ if (CONVERTER != null && eventLogger && marker != null && marker.contains(EVENT_MARKER)) {
+ msg = CONVERTER.convertEvent(message, params, throwable);
} else if (params == null) {
msg = new SimpleMessage(message);
} else {
@@ -400,7 +400,6 @@ public class Log4jLogger implements LocationAwareLogger, Serializable {
// always perform the default de-serialization first
aInputStream.defaultReadObject();
logger = LogManager.getContext().getLogger(name);
- converter = createConverter();
}
/**