diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/Dockerfile b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/Dockerfile index 50cd35ed84b0..044d38c10ab5 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/Dockerfile +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/Dockerfile @@ -1,7 +1,11 @@ -FROM adoptopenjdk/openjdk11:alpine +FROM amazoncorretto:21 COPY target/spring-cloud-open-telemetry1-1.0.0-SNAPSHOT.jar spring-cloud-open-telemetry.jar +COPY otel.properties / +COPY opentelemetry-javaagent-2.4.0.jar / -EXPOSE 8080 +EXPOSE 8090 -ENTRYPOINT ["java","-jar","/spring-cloud-open-telemetry.jar"] \ No newline at end of file +ENV OTEL_JAVAAGENT_CONFIGURATION_FILE="/otel.properties" + +ENTRYPOINT ["java","-javaagent:/opentelemetry-javaagent-2.4.0.jar", "-jar","/spring-cloud-open-telemetry.jar"] diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/opentelemetry-javaagent-2.4.0.jar b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/opentelemetry-javaagent-2.4.0.jar new file mode 100644 index 000000000000..357d5fecd799 Binary files /dev/null and b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/opentelemetry-javaagent-2.4.0.jar differ diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/otel.properties b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/otel.properties new file mode 100644 index 000000000000..06c8fc234af7 --- /dev/null +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/otel.properties @@ -0,0 +1,6 @@ +otel.service.name=product-service +otel.exporter.otlp.endpoint=http://localhost:9246/otlp +otel.exporter.otlp.headers=Authorization=Bearer 646deae4d4cc2d736b849040,X-PzProd=true +otel.traces.exporter=otlp +otel.logs.exporter=otlp +otel.metrics.exporter=none diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/pom.xml b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/pom.xml index 8be1dcf9f910..5505833fa743 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/pom.xml +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/pom.xml @@ -31,13 +31,6 @@ pom import - - org.springframework.cloud - spring-cloud-sleuth-otel-dependencies - ${spring-cloud-sleuth-otel.version} - import - pom - @@ -57,14 +50,20 @@ - org.springframework.cloud - spring-cloud-sleuth-otel-autoconfigure + io.opentelemetry + opentelemetry-sdk-extension-autoconfigure + ${otel-exporter-otlp.version} io.opentelemetry opentelemetry-exporter-otlp ${otel-exporter-otlp.version} + + io.opentelemetry.javaagent + opentelemetry-javaagent + ${otel-instrumentation-otlp.version} + org.junit.jupiter junit-jupiter-engine @@ -92,8 +91,7 @@ 2.7.9 2021.0.5 - 1.1.2 - 1.23.1 + 1.38.0 + 2.4.0 - - \ No newline at end of file + diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/java/com/baeldung/opentelemetry/ProductApplication.java b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/java/com/baeldung/opentelemetry/ProductApplication.java index 84276033408e..e07a4a57d093 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/java/com/baeldung/opentelemetry/ProductApplication.java +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/java/com/baeldung/opentelemetry/ProductApplication.java @@ -1,12 +1,14 @@ package com.baeldung.opentelemetry; +import io.opentelemetry.sdk.OpenTelemetrySdk; +import io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class ProductApplication { - public static void main(String[] args) { + AutoConfiguredOpenTelemetrySdk.initialize(); SpringApplication.run(ProductApplication.class, args); } } diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/resources/application.properties b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/resources/application.properties index feda8cc988af..2844da0bca49 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/resources/application.properties +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry1/src/main/resources/application.properties @@ -1,7 +1,3 @@ -server.port= 8080 +server.port=8090 spring.application.name=product-service -priceClient.baseUrl=http://price-service:8081 -spring.sleuth.otel.config.trace-id-ratio-based=1.0 -spring.sleuth.otel.exporter.otlp.endpoint=https://sdk.playerzero.app/otlp -spring.sleuth.otel.exporter.otlp.headers[Authorization]=Bearer XXXXXXXX -spring.sleuth.otel.exporter.otlp.headers[X-PzProd]=true +priceClient.baseUrl=http://localhost:8091 diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/Dockerfile b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/Dockerfile index fb0e3b32637a..4bc37b85c4d2 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/Dockerfile +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/Dockerfile @@ -1,7 +1,11 @@ -FROM adoptopenjdk/openjdk11:alpine +FROM amazoncorretto:21 COPY target/spring-cloud-open-telemetry2-1.0.0-SNAPSHOT.jar spring-cloud-open-telemetry.jar +COPY otel.properties / +COPY opentelemetry-javaagent-2.4.0.jar / -EXPOSE 8081 +EXPOSE 8091 -ENTRYPOINT ["java","-jar","/spring-cloud-open-telemetry.jar"] \ No newline at end of file +ENV OTEL_JAVAAGENT_CONFIGURATION_FILE="/otel.properties" + +ENTRYPOINT ["java","-javaagent:/opentelemetry-javaagent-2.4.0.jar", "-jar","/spring-cloud-open-telemetry.jar"] diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/opentelemetry-javaagent-2.4.0.jar b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/opentelemetry-javaagent-2.4.0.jar new file mode 100644 index 000000000000..357d5fecd799 Binary files /dev/null and b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/opentelemetry-javaagent-2.4.0.jar differ diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/otel.properties b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/otel.properties new file mode 100644 index 000000000000..73132caf3dcd --- /dev/null +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/otel.properties @@ -0,0 +1,6 @@ +otel.service.name=price-service +otel.exporter.otlp.endpoint=http://localhost:9246/otlp +otel.exporter.otlp.headers=Authorization=Bearer 646deae4d4cc2d736b849040,X-PzProd=true +otel.traces.exporter=otlp +otel.logs.exporter=otlp +otel.metrics.exporter=none diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/pom.xml b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/pom.xml index 6f11451bfb21..f6dfaf86c221 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/pom.xml +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/pom.xml @@ -31,13 +31,6 @@ pom import - - org.springframework.cloud - spring-cloud-sleuth-otel-dependencies - ${spring-cloud-sleuth-otel.version} - import - pom - @@ -57,14 +50,20 @@ - org.springframework.cloud - spring-cloud-sleuth-otel-autoconfigure + io.opentelemetry + opentelemetry-sdk-extension-autoconfigure + ${otel-exporter-otlp.version} io.opentelemetry opentelemetry-exporter-otlp ${otel-exporter-otlp.version} + + io.opentelemetry.javaagent + opentelemetry-javaagent + ${otel-instrumentation-otlp.version} + org.junit.jupiter junit-jupiter-engine @@ -92,8 +91,7 @@ 2.7.9 2021.0.5 - 1.1.2 - 1.23.1 + 1.38.0 + 2.4.0 - - \ No newline at end of file + diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/java/com/baeldung/opentelemetry/PriceApplication.java b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/java/com/baeldung/opentelemetry/PriceApplication.java index 75db68c62469..061c59f35fc7 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/java/com/baeldung/opentelemetry/PriceApplication.java +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/java/com/baeldung/opentelemetry/PriceApplication.java @@ -1,12 +1,14 @@ package com.baeldung.opentelemetry; +import io.opentelemetry.sdk.OpenTelemetrySdk; +import io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdk; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class PriceApplication { - public static void main(String[] args) { + AutoConfiguredOpenTelemetrySdk.initialize(); SpringApplication.run(PriceApplication.class, args); } } diff --git a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/resources/application.properties b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/resources/application.properties index b997f75394ec..b6c25f2ec7c2 100644 --- a/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/resources/application.properties +++ b/spring-cloud-modules/spring-cloud-open-telemetry/spring-cloud-open-telemetry2/src/main/resources/application.properties @@ -1,6 +1,2 @@ -server.port= 8081 +server.port=8091 spring.application.name=price-service -spring.sleuth.otel.config.trace-id-ratio-based=1.0 -spring.sleuth.otel.exporter.otlp.endpoint=https://sdk.playerzero.app/otlp -spring.sleuth.otel.exporter.otlp.headers[Authorization]=Bearer XXXXXXXXX -spring.sleuth.otel.exporter.otlp.headers[X-PzProd]=true