Skip to content
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

Semantic Convention Update: Tracking Issue #4572

Open
7 tasks
JamieDanielson opened this issue Mar 21, 2024 · 2 comments
Open
7 tasks

Semantic Convention Update: Tracking Issue #4572

JamieDanielson opened this issue Mar 21, 2024 · 2 comments
Labels
type:feature-tracking A feature with sub-issues that need to be addressed

Comments

@JamieDanielson
Copy link
Member

Current Status

Current (latest) package of @opentelemetry/semantic-conventions uses semconv version v1.7.0, as seen in scripts/semconv/generate.sh.

There are breaking changes in semantic conventions over time, especially prominent in v1.21 with stabilized http attributes, so we want to update in a way that minimizes impact on end users and offers the environment variable option OTEL_SEMCONV_STABILITY_OPT_IN to allow specifying which attributes to use. See schema for 1.23.1 here that shows changes over time.

Steps required for semantic convention update

@JamieDanielson JamieDanielson added the type:feature-tracking A feature with sub-issues that need to be addressed label Mar 21, 2024
@JamieDanielson
Copy link
Member Author

@MSNev @pichlermarc I created this issue based on our conversation in the SIG meeting to help track the work required to update semantic conventions in otel-js. I believe the first and last few items here are generally uncontroversial, but I wanted to confirm the appropriate step is listed for keeping old semantic convention version intact.

Some languages have a subdirectory of every semconv version as mentioned here. At some point we've also talked about rolling our own that essentially just adds the new attributes into new files to be additive to the existing package, instead of keeping whole packages for each version. Curious for feedback on the approach we want to take.

@trentm
Copy link
Contributor

trentm commented Apr 17, 2024

Interesting, in open-telemetry/opentelemetry-js-contrib#2089 (comment) seemk got the impression that because SemanticAttributes usage is deprecated, they should turn to defining the attributes locally.
(Update: I misread the code. The PR is not defining semconv constants locally.)

I think a couple things could be improved in @opentelemetry/semantic-conventions:

Screenshot 2024-04-17 at 4 55 50 PM

  • The "you shoud use the individual exported constants SemanticAttributes_XXXXX" prose is out of date, I think.
  • The README still shows deprecated usage.

AbhiPrasad added a commit to getsentry/sentry-javascript that referenced this issue Apr 24, 2024
Fixes #11755

OpenTelemetry restructured their http semantic conventions and declared
them stable:
https://opentelemetry.io/blog/2023/http-conventions-declared-stable/

This has unfortunately not been reflected in OpenTelemetry JS yet,
blocked on them making everything backwards compat:
open-telemetry/opentelemetry-js#4572

For now we can directly reference `http.request.method`, the replacement
to `http.method`. When the OTEL SDK is finally updated to use proper
conventions, we can avoid hard coding the string.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:feature-tracking A feature with sub-issues that need to be addressed
Projects
None yet
Development

No branches or pull requests

2 participants