Skip to content

Update opentelemetry-js distribution to latest (v1.30.1) #9

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

Merged
merged 20 commits into from
Feb 17, 2025
Merged

Conversation

danopia
Copy link
Member

@danopia danopia commented Feb 15, 2025

From v1.24.0 towards v1.30.1

semantic-conventions

Upstream now has two different deprecation cycles going on here, and an extra import specifier to select between them.:

  • I ended up patching the default import to include all three deprecation cycles since opentelemetry-js has yet to follow either deprecation, while I want to move this library's instrumentations forward to the latest HTTP convenations.
  • Don't worry about incubating or not, just import semantic-conventions.js.
  • I am deferring HTTP convention changeover to a separate 0.x release so you can take this version without updating your dashboards.

OTLP changes

This includes a pretty large refactor of OTLP exporting:

  • Upstream made some sizable exporter consolidation, so I managed to delete our individual custom exporters and instead give the proper node exporter a fetch() implementaion that works nicely with Deno. The final OTLP export javascript is quite clean now - just promises, no callbacks. Nice!
  • New OTLP feature: optional export compression (enable with OTEL_EXPORTER_OTLP_COMPRESSION=gzip). Implemented with CompressionStream.
  • protobuf exportors are still stripped out. I don't view the amount of additional code worth it. I think if you are at the level where the performance matters, you should be looking forward to deno --unstable-otel instead.

@danopia danopia changed the title WIP: Update opentelemtry distribution to latest WIP: Update opentelemetry-js distribution to latest Feb 15, 2025
Removes the old flags and also brings in some new unstable ones.

Leaving our instrumentation attrs alone,
switching over will break dashboards etc,
let's do it another day
Upstream did the same export consolidation refactor as us, but over
several minor releases so it was cleanest to take them all in one go.

Tested export compression with OTEL_EXPORTER_OTLP_COMPRESSION=gzip
This appears to be a new feature.
@danopia danopia changed the title WIP: Update opentelemetry-js distribution to latest Update opentelemetry-js distribution to latest (v1.30.1) Feb 17, 2025
@danopia danopia marked this pull request as ready for review February 17, 2025 00:17
@danopia danopia merged commit 924f368 into main Feb 17, 2025
8 checks passed
@danopia danopia deleted the otel-update branch February 17, 2025 00:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant