-
Notifications
You must be signed in to change notification settings - Fork 0
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
CORE-69: Spring Boot 3.4.0 and otel cleanup #211
Changes from 5 commits
5cad5d0
8bc578c
e12fb79
f91a921
f2de8c6
a0125f0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,7 +9,7 @@ plugins { | |
id 'com.jfrog.artifactory' version '5.2.5' | ||
id 'org.sonarqube' version '5.1.0.4882' | ||
id 'io.spring.dependency-management' version '1.1.6' | ||
id 'org.springframework.boot' version '3.3.4' | ||
id 'org.springframework.boot' version '3.4.0' | ||
id 'ru.vyarus.quality' version '5.0.0' | ||
id 'com.srcclr.gradle' version '3.1.12' | ||
} | ||
|
@@ -20,9 +20,10 @@ project.ext { | |
isCiServer = System.getenv().containsKey("CI") | ||
} | ||
|
||
// Spring Boot 3.2.3 pulls in opentelemetry-bom 1.31.0. | ||
// We need >= 1.32.0 so that our HttpServerMetrics can use Meter.setExplicitBucketBoundariesAdvice: | ||
ext['opentelemetry.version'] = '1.42.1' | ||
// Spring Boot 3.4.0 pulls in opentelemetry-bom 1.43.0. | ||
// When upgrading Spring Boot, re-check these versions. | ||
ext['opentelemetry.version'] = '1.43.0' | ||
ext['opentelemetry.instrumentation.version'] = '2.9.0' // 2.9.0 targets opentelemetry 1.43.0 | ||
|
||
// If true, search local repository (~/.m2/repository/) first for dependencies. | ||
def useMavenLocal = false | ||
|
@@ -51,6 +52,7 @@ dependencies { | |
|
||
// Spring | ||
implementation group: 'org.springframework.retry', name: 'spring-retry' | ||
implementation group: 'org.springframework.boot', name: 'spring-boot-autoconfigure' | ||
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-jdbc' | ||
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-web' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
annotationProcessor group: 'org.springframework.boot', name: 'spring-boot-configuration-processor' | ||
|
@@ -77,7 +79,7 @@ dependencies { | |
runtimeOnly group: 'org.postgresql', name: 'postgresql' | ||
|
||
// Terra libraries | ||
implementation group: 'org.broadinstitute.dsde.workbench', name: 'sam-client_2.13', version: '0.1-0c4b377' | ||
implementation group: 'org.broadinstitute.dsde.workbench', name: 'sam-client_2.13', version: 'v0.0.329' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this isn't required by the Spring Boot upgrade, but while in this file I noticed that we were using an old, non-semantic-version of sam-client.
|
||
var stairwayVersion= '1.1.15-SNAPSHOT' | ||
api "bio.terra:stairway-gcp:${stairwayVersion}" | ||
implementation "bio.terra:stairway-azure:${stairwayVersion}" | ||
|
@@ -87,25 +89,20 @@ dependencies { | |
implementation group: 'ch.qos.logback.contrib', name: 'logback-json-classic', version: '0.1.5' | ||
implementation group: 'ch.qos.logback.contrib', name: 'logback-jackson', version: '0.1.5' | ||
|
||
// OpenTelemetry BOMs (opentelemetry-bom versioned by Spring dependency manager) | ||
// If the following versions get updated, be sure to update line 25 for ext['opentelemetry.version'] | ||
implementation platform('io.opentelemetry:opentelemetry-bom-alpha:1.44.1-alpha') | ||
implementation platform('io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom:2.10.0') | ||
implementation platform('io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha:2.10.0-alpha') | ||
// OpenTelemetry dependencies versioned by BOMs | ||
// OpenTelemetry dependencies: | ||
implementation platform("io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha:${project.ext['opentelemetry.instrumentation.version']}-alpha") | ||
// ... versioned by Spring Boot | ||
api 'io.opentelemetry:opentelemetry-api' | ||
implementation 'io.opentelemetry:opentelemetry-sdk' | ||
implementation 'io.opentelemetry:opentelemetry-sdk-metrics' | ||
implementation 'io.opentelemetry:opentelemetry-exporter-logging' | ||
implementation 'io.opentelemetry.instrumentation:opentelemetry-spring-webmvc-6.0' | ||
implementation 'io.opentelemetry.instrumentation:opentelemetry-instrumentation-api' | ||
implementation 'io.opentelemetry:opentelemetry-exporter-otlp' | ||
implementation 'io.opentelemetry:opentelemetry-sdk-extension-autoconfigure' | ||
// ... versioned by opentelemetry-instrumentation-bom-alpha | ||
implementation 'io.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations' | ||
implementation 'io.opentelemetry.instrumentation:opentelemetry-instrumentation-api' | ||
implementation 'io.opentelemetry.instrumentation:opentelemetry-spring-boot-autoconfigure' | ||
implementation 'io.opentelemetry:opentelemetry-exporter-prometheus' | ||
implementation 'io.opentelemetry.semconv:opentelemetry-semconv' | ||
implementation 'io.opentelemetry:opentelemetry-api-incubator' | ||
implementation 'io.opentelemetry:opentelemetry-sdk-extension-autoconfigure' | ||
implementation 'io.opentelemetry:opentelemetry-exporter-otlp' | ||
implementation 'org.springframework.boot:spring-boot-autoconfigure' | ||
implementation 'io.opentelemetry:opentelemetry-exporter-prometheus' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I reorganized this whole section. The diff is hard to read, so I'll try to summarize:
|
||
|
||
// Google cloud open telemetry exporters | ||
implementation 'com.google.cloud.opentelemetry:exporter-trace:0.33.0' | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is actually a downgrade. We had been on
2.10.0
before this PR. I thought this was more appropriate, since2.10.0
wants opentelemetry 1.44.1. See https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases.If we decide to keep all the otel dependency versions aligned with Spring Boot, we should probably tell dependabot to ignore those updates.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we need these lines anymore? I think they were there to specify a more advanced version than spring required, is that still true?