Skip to content

Commit f1b653c

Browse files
authored
Update OTel dependencies (#267)
* Update dependency versions * Fix package path change for OTel semconv * Refactor: update Resource configuration to use new API methods * Update style to match spotless config * Update ResourceExample to be compatible with autoconfigure API changes * Update resource passed for e2e-tests * Remove unused dependencies
1 parent 2f256a3 commit f1b653c

14 files changed

Lines changed: 52 additions & 54 deletions

File tree

build.gradle

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -135,29 +135,32 @@ subprojects {
135135

136136
ext {
137137
assertjVersion = '3.22.0'
138-
autoServiceVersion = '1.0.1'
139-
autoValueVersion = '1.10.1'
140-
slf4jVersion = '2.0.7'
141-
googleCloudVersion = '2.14.0'
142-
googleTraceVersion = '2.14.0'
143-
googleCloudBom = '26.11.0'
144-
cloudMonitoringVersion = '3.15.0'
145-
openTelemetryBom = '1.24.0'
146-
openTelemetryVersion = '1.24.0'
147-
openTelemetryInstrumentationVersion = '1.24.0'
148-
openTelemetrySdkExtensionResourceVersion = '1.19.0'
138+
autoServiceVersion = '1.1.1'
139+
autoValueVersion = '1.10.4'
140+
slf4jVersion = '2.0.9'
141+
googleCloudVersion = '2.27.0'
142+
googleTraceVersion = '2.30.0'
143+
googleCloudBom = '26.26.0'
144+
cloudMonitoringVersion = '3.31.0'
145+
openTelemetryBom = '1.31.0'
146+
openTelemetryVersion = '1.31.0'
147+
openTelemetryInstrumentationVersion = '1.31.0'
148+
openTelemetrySemconvVersion = '1.22.0'
149149
junitVersion = '4.13'
150150
mockitoVersion = '3.5.10'
151-
pubSubVersion = '1.123.7'
151+
pubSubVersion = '1.125.11'
152152
testContainersVersion = '1.15.1'
153153
wiremockVersion = '2.27.2'
154154
springWebVersion = '2.4.5'
155155
springOpenFeignVersion = '3.0.0'
156156
springOtelVersion = '1.0.0-M8'
157-
cloudEventsCoreVersion = '2.4.0'
157+
cloudEventsCoreVersion = '2.5.0'
158158
cloudFunctionsFrameworkApiVersion = '1.0.4'
159159
opencensusShimVersion = '1.23.1'
160160

161+
agentLibraries = [
162+
agent: "io.opentelemetry.javaagent:opentelemetry-javaagent:${openTelemetryInstrumentationVersion}",
163+
]
161164
libraries = [
162165
auto_service_annotations : "com.google.auto.service:auto-service-annotations:${autoServiceVersion}",
163166
auto_service : "com.google.auto.service:auto-service:${autoServiceVersion}",
@@ -178,20 +181,16 @@ subprojects {
178181
opentelemetry_context : "io.opentelemetry:opentelemetry-context:${openTelemetryVersion}",
179182
opentelemetry_sdk : "io.opentelemetry:opentelemetry-sdk:${openTelemetryVersion}",
180183
opentelemetry_sdk_common : "io.opentelemetry:opentelemetry-sdk-common:${openTelemetryVersion}",
181-
opentelemetry_autoconfigure_spi : "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:${openTelemetryVersion}",
182-
opentelemetry_semconv : "io.opentelemetry:opentelemetry-semconv:${openTelemetryVersion}-alpha",
184+
opentelemetry_semconv : "io.opentelemetry.semconv:opentelemetry-semconv:${openTelemetrySemconvVersion}-alpha",
183185
opentelemetry_sdk_metrics : "io.opentelemetry:opentelemetry-sdk-metrics:${openTelemetryVersion}",
184-
opentelemetry_sdk_autoconf : "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${openTelemetryVersion}-alpha",
185-
opentelemetry_sdk_resources : "io.opentelemetry:opentelemetry-sdk-extension-resources:${openTelemetrySdkExtensionResourceVersion}",
186+
opentelemetry_sdk_autoconf : "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${openTelemetryVersion}",
187+
opentelemetry_autoconfigure_spi : "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:${openTelemetryVersion}",
186188
opentelemetry_agent_extension : "io.opentelemetry.javaagent:opentelemetry-javaagent-extension-api:${openTelemetryInstrumentationVersion}-alpha",
187189
opentelemetry_otlp_exporter : "io.opentelemetry:opentelemetry-exporter-otlp:${openTelemetryVersion}",
188190
spring_boot_starter_web : "org.springframework.boot:spring-boot-starter-web:${springWebVersion}",
189191
spring_cloud_starter_openfeign : "org.springframework.cloud:spring-cloud-starter-openfeign:${springOpenFeignVersion}",
190192
spring_cloud_sleuth_otel_autoconf: "org.springframework.cloud:spring-cloud-sleuth-otel-autoconfigure:${springOtelVersion}",
191193
]
192-
agentLibraries = [
193-
agent: "io.opentelemetry.javaagent:opentelemetry-javaagent:${openTelemetryInstrumentationVersion}",
194-
]
195194
testLibraries = [
196195
assertj : "org.assertj:assertj-core:${assertjVersion}",
197196
junit : "junit:junit:${junitVersion}",

detectors/resources/src/main/java/com/google/cloud/opentelemetry/detectors/AttributesExtractorUtil.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
package com.google.cloud.opentelemetry.detectors;
1717

1818
import io.opentelemetry.api.common.AttributesBuilder;
19-
import io.opentelemetry.semconv.resource.attributes.ResourceAttributes;
19+
import io.opentelemetry.semconv.ResourceAttributes;
2020

2121
/**
2222
* A utility class that contains method that facilitate extraction of attributes from environment

detectors/resources/src/main/java/com/google/cloud/opentelemetry/detectors/GCPResource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
2222
import io.opentelemetry.sdk.autoconfigure.spi.ResourceProvider;
2323
import io.opentelemetry.sdk.resources.Resource;
24-
import io.opentelemetry.semconv.resource.attributes.ResourceAttributes;
24+
import io.opentelemetry.semconv.ResourceAttributes;
2525
import java.util.logging.Logger;
2626

2727
/**

detectors/resources/src/test/java/com/google/cloud/opentelemetry/detectors/GCPResourceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
import com.github.tomakehurst.wiremock.junit.WireMockRule;
2626
import io.opentelemetry.sdk.autoconfigure.spi.ResourceProvider;
27-
import io.opentelemetry.semconv.resource.attributes.ResourceAttributes;
27+
import io.opentelemetry.semconv.ResourceAttributes;
2828
import java.util.HashMap;
2929
import java.util.Map;
3030
import java.util.ServiceLoader;

e2e-test-server/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ dependencies {
4141
implementation platform(libraries.opentelemetry_bom)
4242
implementation project(':exporter-trace')
4343
implementation project(':propagators-gcp')
44-
runtimeOnly project(':detector-resources')
44+
implementation project(':detector-resources')
4545
}
4646

47-
tasks.build.dependsOn tasks.shadowJar
47+
tasks.build.dependsOn tasks.shadowJar

e2e-test-server/src/main/java/com/google/cloud/opentelemetry/endtoend/ScenarioHandlerManager.java

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616
package com.google.cloud.opentelemetry.endtoend;
1717

18+
import com.google.cloud.opentelemetry.detectors.GCPResource;
1819
import com.google.cloud.opentelemetry.propagators.XCloudTraceContextPropagator;
1920
import com.google.cloud.opentelemetry.trace.TraceConfiguration;
2021
import com.google.cloud.opentelemetry.trace.TraceExporter;
@@ -28,7 +29,8 @@
2829
import io.opentelemetry.context.propagation.TextMapGetter;
2930
import io.opentelemetry.context.propagation.TextMapPropagator;
3031
import io.opentelemetry.sdk.OpenTelemetrySdk;
31-
import io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk;
32+
import io.opentelemetry.sdk.autoconfigure.ResourceConfiguration;
33+
import io.opentelemetry.sdk.autoconfigure.spi.internal.DefaultConfigProperties;
3234
import io.opentelemetry.sdk.resources.Resource;
3335
import io.opentelemetry.sdk.trace.SdkTracerProvider;
3436
import io.opentelemetry.sdk.trace.export.SimpleSpanProcessor;
@@ -39,6 +41,7 @@
3941
import java.util.HashMap;
4042
import java.util.Locale;
4143
import java.util.Map;
44+
import java.util.Objects;
4245
import java.util.function.Function;
4346
import java.util.logging.Logger;
4447

@@ -65,7 +68,7 @@ private Response health(Request request) {
6568

6669
/** Basic trace test. */
6770
private Response basicTrace(Request request) {
68-
LOGGER.info("Running basicTrace test, request: " + request);
71+
LOGGER.info("Running basicTrace test, request: " + request.toString());
6972
return withTemporaryTracer(
7073
(tracer) -> {
7174
Span span =
@@ -74,6 +77,7 @@ private Response basicTrace(Request request) {
7477
.setAttribute(Constants.TEST_ID, request.testId())
7578
.startSpan();
7679
try {
80+
LOGGER.info("Sending trace with ID: " + span.getSpanContext().getTraceId());
7781
return Response.ok(Map.of(Constants.TRACE_ID, span.getSpanContext().getTraceId()));
7882
} finally {
7983
span.end();
@@ -83,16 +87,17 @@ private Response basicTrace(Request request) {
8387

8488
/** Test where we include resource detection */
8589
private Response detectResource(Request request) {
86-
LOGGER.info("Running detectResource test, request: " + request);
87-
// TODO - this may fail to just pull the resource.
90+
LOGGER.info("Running detectResource test, request: " + request.toString());
91+
Resource gcpResource =
92+
new GCPResource()
93+
.createResource(
94+
DefaultConfigProperties.create(
95+
Map.of("otel.traces.exporter", "none", "otel.metrics.exporter", "none")));
8896
Resource resource =
89-
AutoConfiguredOpenTelemetrySdk.builder()
90-
.setResultAsGlobal(false)
91-
.addPropertiesSupplier(
92-
() -> Map.of("otel.traces.exporter", "none", "otel.metrics.exporter", "none"))
93-
.registerShutdownHook(false)
94-
.build()
95-
.getResource();
97+
Resource.getDefault()
98+
.merge(gcpResource)
99+
.merge(ResourceConfiguration.createEnvironmentResource());
100+
96101
return withTemporaryOtel(
97102
resource,
98103
(sdk) -> {
@@ -214,7 +219,7 @@ private static OpenTelemetrySdk setupTraceExporter(Resource resource) throws IOE
214219
TraceConfiguration configuration =
215220
TraceConfiguration.builder()
216221
.setDeadline(Duration.ofMillis(30000))
217-
.setProjectId(Constants.PROJECT_ID != "" ? Constants.PROJECT_ID : null)
222+
.setProjectId(!Objects.equals(Constants.PROJECT_ID, "") ? Constants.PROJECT_ID : null)
218223
.build();
219224

220225
SpanExporter traceExporter = TraceExporter.createWithConfiguration(configuration);

examples/resource/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ description = 'Examples for showing resource detection in various GCP environmen
2525
dependencies {
2626
implementation project(':detector-resources')
2727
implementation(libraries.opentelemetry_sdk_autoconf)
28-
implementation(libraries.opentelemetry_sdk_resources)
2928
implementation(libraries.opentelemetry_otlp_exporter)
3029
}
3130

examples/resource/src/main/java/com/google/cloud/opentelemetry/example/resource/ResourceExample.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,13 @@
1616
package com.google.cloud.opentelemetry.example.resource;
1717

1818
import com.google.cloud.opentelemetry.detectors.GCPResource;
19-
import io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk;
19+
import io.opentelemetry.sdk.autoconfigure.ResourceConfiguration;
20+
import io.opentelemetry.sdk.resources.Resource;
2021

2122
public class ResourceExample {
2223
public static void main(String[] args) {
2324
System.out.println("Detecting resource: Autoconfigure");
24-
io.opentelemetry.sdk.resources.Resource autoResource =
25-
AutoConfiguredOpenTelemetrySdk.builder()
26-
.setResultAsGlobal(false)
27-
.setServiceClassLoader(ResourceExample.class.getClassLoader())
28-
.build()
29-
.getResource();
25+
Resource autoResource = ResourceConfiguration.createEnvironmentResource();
3026
System.out.println(autoResource.getAttributes());
3127
System.out.println("Detecting resource: hardcoded");
3228
GCPResource resource = new GCPResource();

exporters/metrics/src/test/java/com/google/cloud/opentelemetry/metric/FakeData.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSumData;
4343
import io.opentelemetry.sdk.metrics.internal.data.ImmutableSummaryPointData;
4444
import io.opentelemetry.sdk.resources.Resource;
45-
import io.opentelemetry.semconv.resource.attributes.ResourceAttributes;
45+
import io.opentelemetry.semconv.ResourceAttributes;
4646
import java.util.Arrays;
4747
import java.util.Collections;
4848
import java.util.Date;

exporters/trace/src/main/java/com/google/cloud/opentelemetry/trace/TraceVersions.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,7 @@
1515
*/
1616
package com.google.cloud.opentelemetry.trace;
1717

18-
import static io.opentelemetry.semconv.resource.attributes.ResourceAttributes.TELEMETRY_SDK_VERSION;
19-
// import static
20-
// io.opentelemetry.semconv.resource.attributes.ResourceAttributes.TELEMETRY_SDK_VERSION;
18+
import static io.opentelemetry.semconv.ResourceAttributes.TELEMETRY_SDK_VERSION;
2119

2220
import io.opentelemetry.sdk.resources.Resource;
2321
import java.util.Properties;

0 commit comments

Comments
 (0)