Skip to content

Commit d10055d

Browse files
Use modern Logback for Java 21+ tests with better Virtual Threads support. (#10551)
Use latest logback for Java 21+ tests with better virtual thread support. Merge branch 'master' into alexeyk/fix-of-hanged-logback-java-21-plus Merge branch 'master' into alexeyk/fix-of-hanged-logback-java-21-plus Fixed review comments. Co-authored-by: alexey.kuznetsov <alexey.kuznetsov@datadoghq.com>
1 parent a3221e2 commit d10055d

File tree

5 files changed

+35
-32
lines changed

5 files changed

+35
-32
lines changed

dd-java-agent/instrumentation/java/java-concurrent/java-concurrent-21.0/build.gradle

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
apply from: "$rootDir/gradle/java.gradle"
2-
// Use slf4j-simple as default; logback has a high chance of getting stuck in a deadlock on CI.
3-
apply from: "$rootDir/gradle/slf4j-simple.gradle"
42
apply plugin: 'idea'
53

64
testJvmConstraints {
@@ -49,6 +47,13 @@ tasks.named("check") {
4947
dependsOn "previewTest"
5048
}
5149

50+
// Use latest logback for Java 21+ tests with better virtual thread support.
51+
configurations.named("testRuntimeClasspath") {
52+
resolutionStrategy {
53+
force libs.logback.classic.latest
54+
}
55+
}
56+
5257
dependencies {
5358
testImplementation project(':dd-java-agent:instrumentation:datadog:tracing:trace-annotation')
5459
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,24 @@
1+
plugins {
2+
id 'idea'
3+
}
4+
15
apply from: "$rootDir/gradle/java.gradle"
26

37
muzzle {
48
pass {
59
coreJdk('25')
610
}
711
}
12+
13+
idea {
14+
module {
15+
jdkName = '25'
16+
}
17+
}
18+
19+
// Use latest logback for Java 21+ tests with better virtual thread support.
20+
configurations.named("testRuntimeClasspath") {
21+
resolutionStrategy {
22+
force libs.logback.classic.latest
23+
}
24+
}

dd-java-agent/instrumentation/java/java-lang/java-lang-21.0/build.gradle

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ plugins {
33
}
44

55
apply from: "$rootDir/gradle/java.gradle"
6-
// Use slf4j-simple as default; logback has a high chance of getting stuck in a deadlock on CI.
7-
apply from: "$rootDir/gradle/slf4j-simple.gradle"
86

97
testJvmConstraints {
108
minJavaVersion = JavaVersion.VERSION_21
@@ -30,3 +28,11 @@ tasks.named("compileTestJava", JavaCompile) {
3028
dependencies {
3129
testImplementation project(':dd-java-agent:instrumentation:datadog:tracing:trace-annotation')
3230
}
31+
32+
// Use latest logback for Java 21+ tests with better virtual thread support.
33+
configurations.named("testRuntimeClasspath") {
34+
resolutionStrategy {
35+
force libs.logback.classic.latest
36+
}
37+
}
38+

gradle/libs.versions.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ lz4 = "1.7.1"
5656

5757
# Logging
5858
slf4j = "1.7.30"
59-
logback = "1.2.13"
59+
logback = "1.2.13" # required by Java 8 modules.
60+
logback-latest = "1.5.27" # recommended for Java 11+ modules.
6061

6162
# JSON
6263
jackson = "2.20.0"
@@ -134,6 +135,7 @@ lz4 = { module = "org.lz4:lz4-java", version.ref = "lz4" }
134135

135136
# Logging
136137
logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
138+
logback-classic-latest = { module = "ch.qos.logback:logback-classic", version.ref = "logback-latest" }
137139
logback-core = { module = "ch.qos.logback:logback-core", version.ref = "logback" }
138140
log4j-over-slf4j = { module = "org.slf4j:log4j-over-slf4j", version.ref = "slf4j" }
139141
jcl-over-slf4j = { module = "org.slf4j:jcl-over-slf4j", version.ref = "slf4j" }

gradle/slf4j-simple.gradle

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)