diff --git a/docs/standalone-library-instrumentation.md b/docs/standalone-library-instrumentation.md
index dd0c7f4b1657..23d7773a059c 100644
--- a/docs/standalone-library-instrumentation.md
+++ b/docs/standalone-library-instrumentation.md
@@ -15,8 +15,8 @@ that can be used if you prefer that over using the Java agent:
* [Ktor 1.0](../instrumentation/ktor/ktor-1.0/library)
* [Ktor 2.0](../instrumentation/ktor/ktor-2.0/library)
* [Lettuce](../instrumentation/lettuce/lettuce-5.1/library)
-* [Log4j appender](../instrumentation/log4j/log4j-appender-2.16/library)
-* [Log4j thread context](../instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure)
+* [Log4j appender](../instrumentation/log4j/log4j-appender-2.17/library)
+* [Log4j thread context](../instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure)
* [Logback](../instrumentation/logback/logback-appender-1.0/library)
* [MongoDB Driver](../instrumentation/mongo/mongo-3.1/library)
* [OkHttp](../instrumentation/okhttp/okhttp-3.0/library)
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/build.gradle.kts b/instrumentation/log4j/log4j-appender-2.17/javaagent/build.gradle.kts
similarity index 94%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/build.gradle.kts
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/build.gradle.kts
index 9ba13daa70c3..7be906d53163 100644
--- a/instrumentation/log4j/log4j-appender-2.16/javaagent/build.gradle.kts
+++ b/instrumentation/log4j/log4j-appender-2.17/javaagent/build.gradle.kts
@@ -12,12 +12,12 @@ muzzle {
}
dependencies {
- library("org.apache.logging.log4j:log4j-core:2.16.0")
+ library("org.apache.logging.log4j:log4j-core:2.17.0")
compileOnly(project(":instrumentation-appender-api-internal"))
compileOnly(project(":javaagent-bootstrap"))
- implementation(project(":instrumentation:log4j:log4j-appender-2.16:library"))
+ implementation(project(":instrumentation:log4j:log4j-appender-2.17:library"))
testImplementation("org.awaitility:awaitility")
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentation.java b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentation.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentation.java
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentation.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java
similarity index 93%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java
index 95dbe3f67d77..4855b376d5d8 100644
--- a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java
+++ b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jAppenderInstrumentationModule.java
@@ -16,7 +16,7 @@
public class Log4jAppenderInstrumentationModule extends InstrumentationModule {
public Log4jAppenderInstrumentationModule() {
- super("log4j-appender", "log4j-appender-2.16");
+ super("log4j-appender", "log4j-appender-2.17");
}
@Override
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jHelper.java b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jHelper.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jHelper.java
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/appender/v2_16/Log4jHelper.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/test/groovy/Log4j2Test.groovy b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/test/groovy/Log4j2Test.groovy
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/src/test/groovy/Log4j2Test.groovy
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/src/test/groovy/Log4j2Test.groovy
diff --git a/instrumentation/log4j/log4j-appender-2.16/javaagent/src/test/resources/log4j2.xml b/instrumentation/log4j/log4j-appender-2.17/javaagent/src/test/resources/log4j2.xml
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/javaagent/src/test/resources/log4j2.xml
rename to instrumentation/log4j/log4j-appender-2.17/javaagent/src/test/resources/log4j2.xml
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/README.md b/instrumentation/log4j/log4j-appender-2.17/library/README.md
similarity index 95%
rename from instrumentation/log4j/log4j-appender-2.16/library/README.md
rename to instrumentation/log4j/log4j-appender-2.17/library/README.md
index 5b3f6f7ba8d6..696979635c73 100644
--- a/instrumentation/log4j/log4j-appender-2.16/library/README.md
+++ b/instrumentation/log4j/log4j-appender-2.17/library/README.md
@@ -16,7 +16,7 @@ stable [release](https://search.maven.org/search?q=g:io.opentelemetry.instrument
io.opentelemetry.instrumentation
- opentelemetry-log4j-appender-2.16
+ opentelemetry-log4j-appender-2.17
OPENTELEMETRY_VERSION
@@ -26,7 +26,7 @@ stable [release](https://search.maven.org/search?q=g:io.opentelemetry.instrument
```kotlin
dependencies {
- runtimeOnly("io.opentelemetry.instrumentation:opentelemetry-log4j-appender-2.16:OPENTELEMETRY_VERSION")
+ runtimeOnly("io.opentelemetry.instrumentation:opentelemetry-log4j-appender-2.17:OPENTELEMETRY_VERSION")
}
```
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/build.gradle.kts b/instrumentation/log4j/log4j-appender-2.17/library/build.gradle.kts
similarity index 92%
rename from instrumentation/log4j/log4j-appender-2.16/library/build.gradle.kts
rename to instrumentation/log4j/log4j-appender-2.17/library/build.gradle.kts
index 4243522f44dc..9901fb4bdd49 100644
--- a/instrumentation/log4j/log4j-appender-2.16/library/build.gradle.kts
+++ b/instrumentation/log4j/log4j-appender-2.17/library/build.gradle.kts
@@ -6,7 +6,7 @@ dependencies {
implementation(project(":instrumentation-appender-api-internal"))
implementation(project(":instrumentation-appender-sdk-internal"))
- library("org.apache.logging.log4j:log4j-core:2.16.0")
+ library("org.apache.logging.log4j:log4j-core:2.17.0")
testImplementation(project(":instrumentation-appender-sdk-internal"))
testImplementation("io.opentelemetry:opentelemetry-sdk-logs")
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppender.java b/instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppender.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppender.java
rename to instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppender.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/ContextDataAccessor.java b/instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/ContextDataAccessor.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/ContextDataAccessor.java
rename to instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/ContextDataAccessor.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapper.java b/instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapper.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapper.java
rename to instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapper.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppenderConfigTest.java b/instrumentation/log4j/log4j-appender-2.17/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppenderConfigTest.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppenderConfigTest.java
rename to instrumentation/log4j/log4j-appender-2.17/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/OpenTelemetryAppenderConfigTest.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapperTest.java b/instrumentation/log4j/log4j-appender-2.17/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapperTest.java
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapperTest.java
rename to instrumentation/log4j/log4j-appender-2.17/library/src/test/java/io/opentelemetry/instrumentation/log4j/appender/v2_16/internal/LogEventMapperTest.java
diff --git a/instrumentation/log4j/log4j-appender-2.16/library/src/test/resources/log4j2-test.xml b/instrumentation/log4j/log4j-appender-2.17/library/src/test/resources/log4j2-test.xml
similarity index 100%
rename from instrumentation/log4j/log4j-appender-2.16/library/src/test/resources/log4j2-test.xml
rename to instrumentation/log4j/log4j-appender-2.17/library/src/test/resources/log4j2-test.xml
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/build.gradle.kts b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/build.gradle.kts
similarity index 90%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/build.gradle.kts
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/build.gradle.kts
index b19a169e3d89..dbb317477647 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/build.gradle.kts
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/build.gradle.kts
@@ -7,7 +7,7 @@ muzzle {
pass {
group.set("org.apache.logging.log4j")
module.set("log4j-core")
- versions.set("[2.16.0,)")
+ versions.set("[2.17.0,)")
assertInverse.set(true)
}
}
@@ -21,9 +21,9 @@ testSets {
}
dependencies {
- library("org.apache.logging.log4j:log4j-core:2.16.0")
+ library("org.apache.logging.log4j:log4j-core:2.17.0")
- implementation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.16:library-autoconfigure"))
+ implementation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.17:library-autoconfigure"))
testInstrumentation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.7:javaagent"))
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java
similarity index 78%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java
index cb0b6fae6120..d2a1ec961be9 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_16/Log4j2InstrumentationModule.java
@@ -8,7 +8,6 @@
import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
import static java.util.Collections.singletonList;
import static net.bytebuddy.matcher.ElementMatchers.named;
-import static net.bytebuddy.matcher.ElementMatchers.not;
import com.google.auto.service.AutoService;
import io.opentelemetry.javaagent.extension.instrumentation.HelperResourceBuilder;
@@ -22,7 +21,7 @@
@AutoService(InstrumentationModule.class)
public class Log4j2InstrumentationModule extends InstrumentationModule {
public Log4j2InstrumentationModule() {
- super("log4j-context-data", "log4j-context-data-2.16");
+ super("log4j-context-data", "log4j-context-data-2.17");
}
@Override
@@ -33,14 +32,11 @@ public void registerHelperResources(HelperResourceBuilder helperResourceBuilder)
@Override
public ElementMatcher.Junction classLoaderMatcher() {
- // want to cover 2.16.0+
- // - DefaultArbiter introduced in 2.15.0
- // - LookupMessagePatternConverter introduced in 2.15.0, removed in 2.16.0
- return hasClassesNamed("org.apache.logging.log4j.core.config.arbiters.DefaultArbiter")
- .and(
- not(
- hasClassesNamed(
- "org.apache.logging.log4j.core.pattern.MessagePatternConverter$LookupMessagePatternConverter")));
+ return hasClassesNamed(
+ // class added in 2.17.0 and backported to 2.12.3
+ "org.apache.logging.log4j.core.lookup.ConfigurationStrSubstitutor",
+ // class added in 2.15.0
+ "org.apache.logging.log4j.core.config.arbiters.DefaultArbiter");
}
@Override
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/src/test/groovy/AutoLog4j2Test.groovy b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/src/test/groovy/AutoLog4j2Test.groovy
similarity index 100%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/javaagent/src/test/groovy/AutoLog4j2Test.groovy
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/javaagent/src/test/groovy/AutoLog4j2Test.groovy
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/README.md b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md
similarity index 93%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/README.md
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md
index 673695376cb2..6b514b6ec260 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/README.md
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/README.md
@@ -15,7 +15,7 @@ stable [release](https://search.maven.org/search?q=g:io.opentelemetry.instrument
io.opentelemetry.instrumentation
- opentelemetry-log4j-context-data-2.16-autoconfigure
+ opentelemetry-log4j-context-data-2.17-autoconfigure
OPENTELEMETRY_VERSION
@@ -25,7 +25,7 @@ stable [release](https://search.maven.org/search?q=g:io.opentelemetry.instrument
```kotlin
dependencies {
- runtimeOnly("io.opentelemetry.instrumentation:opentelemetry-log4j-context-data-2.16-autoconfigure:OPENTELEMETRY_VERSION")
+ runtimeOnly("io.opentelemetry.instrumentation:opentelemetry-log4j-context-data-2.17-autoconfigure:OPENTELEMETRY_VERSION")
}
```
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/build.gradle.kts b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/build.gradle.kts
similarity index 81%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/build.gradle.kts
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/build.gradle.kts
index 14c4d240072f..6becf954e69e 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/build.gradle.kts
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/build.gradle.kts
@@ -5,7 +5,7 @@ plugins {
base.archivesName.set("${base.archivesName.get()}-autoconfigure")
dependencies {
- library("org.apache.logging.log4j:log4j-core:2.16.0")
+ library("org.apache.logging.log4j:log4j-core:2.17.0")
testImplementation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2-common:testing"))
}
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/main/java/io/opentelemetry/instrumentation/log4j/v2_16/OpenTelemetryContextDataProvider.java b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/main/java/io/opentelemetry/instrumentation/log4j/v2_16/OpenTelemetryContextDataProvider.java
similarity index 100%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/main/java/io/opentelemetry/instrumentation/log4j/v2_16/OpenTelemetryContextDataProvider.java
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/main/java/io/opentelemetry/instrumentation/log4j/v2_16/OpenTelemetryContextDataProvider.java
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/main/resources/META-INF/services/org.apache.logging.log4j.core.util.ContextDataProvider b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/main/resources/META-INF/services/org.apache.logging.log4j.core.util.ContextDataProvider
similarity index 100%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/main/resources/META-INF/services/org.apache.logging.log4j.core.util.ContextDataProvider
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/main/resources/META-INF/services/org.apache.logging.log4j.core.util.ContextDataProvider
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/test/groovy/LibraryLog4j2Test.groovy b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/test/groovy/LibraryLog4j2Test.groovy
similarity index 100%
rename from instrumentation/log4j/log4j-context-data/log4j-context-data-2.16/library-autoconfigure/src/test/groovy/LibraryLog4j2Test.groovy
rename to instrumentation/log4j/log4j-context-data/log4j-context-data-2.17/library-autoconfigure/src/test/groovy/LibraryLog4j2Test.groovy
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts
index 9731ebd5bc36..b0e2780815a6 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/build.gradle.kts
@@ -6,7 +6,7 @@ muzzle {
pass {
group.set("org.apache.logging.log4j")
module.set("log4j-core")
- versions.set("[2.7,2.16.0)")
+ versions.set("[2.7,2.17.0)")
assertInverse.set(true)
}
}
@@ -14,9 +14,9 @@ muzzle {
dependencies {
library("org.apache.logging.log4j:log4j-core:2.7")
- testInstrumentation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.16:javaagent"))
+ testInstrumentation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.17:javaagent"))
testImplementation(project(":instrumentation:log4j:log4j-context-data:log4j-context-data-2-common:testing"))
- latestDepTestLibrary("org.apache.logging.log4j:log4j-core:2.15.+") // see log4j-context-data-2.16
+ latestDepTestLibrary("org.apache.logging.log4j:log4j-core:2.16.+") // see log4j-context-data-2.17
}
diff --git a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_7/Log4j27InstrumentationModule.java b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_7/Log4j27InstrumentationModule.java
index a2b5ce6702ff..4ee4caff51f0 100644
--- a/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_7/Log4j27InstrumentationModule.java
+++ b/instrumentation/log4j/log4j-context-data/log4j-context-data-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/log4j/v2_7/Log4j27InstrumentationModule.java
@@ -23,16 +23,17 @@ public Log4j27InstrumentationModule() {
@Override
public ElementMatcher.Junction classLoaderMatcher() {
- // want to cover 2.7 through (and including) 2.15.0 (but not including 2.16.0+)
- // - ContextDataInjectorFactory introduced in 2.7
- // - DefaultArbiter introduced in 2.15.0
- // - LookupMessagePatternConverter introduced in 2.15.0, removed in 2.16.0
- return hasClassesNamed("org.apache.logging.log4j.core.impl.ContextDataInjectorFactory")
+ // want to cover 2.7 up to (but not including) 2.17.0
+ return hasClassesNamed(
+ // class added in 2.7
+ "org.apache.logging.log4j.core.impl.ContextDataInjectorFactory")
.and(
- not(hasClassesNamed("org.apache.logging.log4j.core.config.arbiters.DefaultArbiter"))
- .or(
- hasClassesNamed(
- "org.apache.logging.log4j.core.pattern.MessagePatternConverter$LookupMessagePatternConverter")));
+ not(
+ hasClassesNamed(
+ // class added in 2.17.0 and backported to 2.12.3
+ "org.apache.logging.log4j.core.lookup.ConfigurationStrSubstitutor",
+ // class added in 2.15.0
+ "org.apache.logging.log4j.core.config.arbiters.DefaultArbiter")));
}
@Override
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 2f66c55b4ccd..67db76e0dcf8 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -299,11 +299,11 @@ include(":instrumentation:liberty:liberty-dispatcher:javaagent")
include(":instrumentation:log4j:log4j-appender-1.2:javaagent")
include(":instrumentation:log4j:log4j-mdc-1.2:javaagent")
include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.7:javaagent")
-include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.16:javaagent")
-include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.16:library-autoconfigure")
+include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.17:javaagent")
+include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2.17:library-autoconfigure")
include(":instrumentation:log4j:log4j-context-data:log4j-context-data-2-common:testing")
-include(":instrumentation:log4j:log4j-appender-2.16:javaagent")
-include(":instrumentation:log4j:log4j-appender-2.16:library")
+include(":instrumentation:log4j:log4j-appender-2.17:javaagent")
+include(":instrumentation:log4j:log4j-appender-2.17:library")
include(":instrumentation:logback:logback-appender-1.0:javaagent")
include(":instrumentation:logback:logback-appender-1.0:library")
include(":instrumentation:logback:logback-mdc-1.0:javaagent")