Onboarding ADOT Java to v2.x - with otel v2.10.0 (NOT READY) #975
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes:
Onboarding ADOT Java to v2.x, with the latest
opentelemetry-java-instrumentation
dependency is version v2.10.0. And upgrade the workflows, adot core implementation codes, contract tests and smoke tests with following change:A. Workflows:
.github/patches/opentelemetry-java-instrumentation.patch
file with the same code change as previous patch based on upstream v2.10.0.B. Core repo:
com.github.johnrengelman.shadow
tocom.gradleup.shadow
as it has been marked under maintenance mode: https://github.com/GradleUp/shadow?tab=readme-ov-file#gradle-shadowcom.diffplug.spotless
to newer version 6.25.0com.google.cloud.tools.jib
to newer version 3.4.4C. Contract tests:
kotlin("jvm")
version to be compatible if the new Java class from upstream.OTEL_EXPORTER_OTLP_PROTOCOL
togrpc
for instrumentation as in version v2.0.0:a. All the change made in Support new semantice conventions. #972
b. extra semantic conventions included in contract tests:
messaging.kafka.destination.partition
->messaging.destination.partition.id
messaging.message.payload_size_bytes
->messaging.message.body.size
c. Remove
network.protocol.name
attribute check as it has marked as Conditionally required if not http and network.protocol.version is set: https://opentelemetry.io/blog/2023/http-conventions-declared-stable/#summary-of-changes.d. Conditionally check
peer.service
for http client. Match with PR: https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12083/filese. Remove local socket attributes from http server span check as it is not extracted from HttpServerAttributesExtractor (code),
f. Remove h
ttp.response.header.content_length
as it need an explicit configuration: https://opentelemetry.io/docs/specs/semconv/attributes-registry/http/#http-response-headerD. Smoke tests
https://opentelemetry.io/docs/zero-code/java/agent/disable/#suppressing-controller-andor-view-spans
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.