Skip to content

Remove all shared internal code refs from zipkin exporter#8413

Open
jack-berg wants to merge 3 commits into
open-telemetry:mainfrom
jack-berg:zipkin-shared-internal-code
Open

Remove all shared internal code refs from zipkin exporter#8413
jack-berg wants to merge 3 commits into
open-telemetry:mainfrom
jack-berg:zipkin-shared-internal-code

Conversation

@jack-berg
Copy link
Copy Markdown
Member

Related to #7863.

Removes all shared internal code refs from opentelemetry-expoter-zipkin.

This facilitates the plan to stop publishing in mid 2026 while guaranteeing that old zipkin releases can continue to be used with more recent SDK releases without risk of runtime breakages.

Places where I had to make decisions:

  • Exporter metric utils: Utilities spread across io.opentelemetry.exporter.internal.* and io.opentelemetry.sdk.internal.* which are involved in recording internal exporter telemetry. I copied all these classes and did treeshaking to remove code unused in the zipkin context. Also removed zipkin refs from original classes because its no longer used.
  • ThrottlingLogger: From io.opentelemetry.sdk.internal.*. I copied these classes and did treeshaking to remov code unused in the zipkin context.
  • io.opentelemetry.api.internal.Utils.checkArgument: Not worth copying - just duplicated the trivial logic.
  • io.opentelemetry.api.internal.InstrumentationUtil: Utility for coordination instrumentation cycles from the java agent instrumenting the client libraries used by the exporters. Can't make a copy of this. Need a single reliable ref to the ContextKey to share between SDK and agent. To address, I promoted to public impl api at io.opentelemetry.api.impl. @open-telemetry/java-instrumentation-maintainers we'll need to coordinate with a corresponding change in opentelemetry-java-instrumentation after this release.

@jack-berg jack-berg requested a review from a team as a code owner May 18, 2026 18:25
@jack-berg jack-berg changed the title Zipkin shared internal code Remove all shared internal code refs from zipkin exporter May 18, 2026
@otelbot otelbot Bot added the api-change Changes to public API surface area label May 18, 2026
@otelbot
Copy link
Copy Markdown
Contributor

otelbot Bot commented May 18, 2026

⚠️ API changes detected — additional maintainer review required

@jack-berg @jkwatson

This PR modifies the public API surface area of the following module(s):

  • opentelemetry-api

Please review the changes in docs/apidiffs/current_vs_latest/ carefully before approving.

"opentelemetry-exporter-logging",
"opentelemetry-exporter-logging-otlp",
"opentelemetry-exporter-prometheus",
"opentelemetry-exporter-zipkin",
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the key line that verifies I covered everything. If I missed anything, this test would fail.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 18, 2026

Codecov Report

❌ Patch coverage is 80.06873% with 58 lines in your changes missing coverage. Please review.
✅ Project coverage is 91.00%. Comparing base (d39116e) to head (87d95e3).

Files with missing lines Patch % Lines
...try/exporter/zipkin/internal/ThrottlingLogger.java 56.41% 14 Missing and 3 partials ⚠️
...orter/zipkin/internal/ExporterInstrumentation.java 71.05% 6 Missing and 5 partials ⚠️
...porter/zipkin/internal/SemConvExporterMetrics.java 90.58% 1 Missing and 7 partials ⚠️
...xporter/zipkin/internal/LegacyExporterMetrics.java 86.36% 2 Missing and 4 partials ⚠️
...etry/exporter/zipkin/internal/ExporterMetrics.java 71.42% 2 Missing and 2 partials ⚠️
.../exporter/zipkin/internal/NoopExporterMetrics.java 0.00% 4 Missing ⚠️
...elemetry/exporter/zipkin/internal/RateLimiter.java 76.47% 1 Missing and 3 partials ⚠️
...try/exporter/zipkin/ZipkinSpanExporterBuilder.java 50.00% 1 Missing and 1 partial ⚠️
...elemetry/exporter/zipkin/internal/ComponentId.java 87.50% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #8413      +/-   ##
============================================
- Coverage     91.15%   91.00%   -0.15%     
- Complexity     7762     7811      +49     
============================================
  Files           881      892      +11     
  Lines         23408    23691     +283     
  Branches       2330     2360      +30     
============================================
+ Hits          21337    21561     +224     
- Misses         1377     1409      +32     
- Partials        694      721      +27     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api-change Changes to public API surface area

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant