-
Notifications
You must be signed in to change notification settings - Fork 782
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
Http server semconv span stable #4978
Http server semconv span stable #4978
Conversation
…tils.ts Co-authored-by: Marc Pichler <[email protected]>
) Co-authored-by: Marc Pichler <[email protected]>
Co-authored-by: Mend Renovate <[email protected]>
d2b6fda
to
9a0c2de
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #4978 +/- ##
=======================================
Coverage 93.39% 93.39%
=======================================
Files 46 46
Lines 712 712
Branches 120 120
=======================================
Hits 665 665
Misses 47 47 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for working on this!
@@ -76,7 +76,7 @@ The following options are deprecated: | |||
|
|||
## Semantic Conventions | |||
|
|||
### Client Spans | |||
### Client and Server Spans |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure how best to update without making this big PR even bigger, but the section with the table of attributes will need to be updated in some way (starting on line 114 that still references Server Spans). It may be worth having two tables - 1 representing old, 1 representing new. I'm happy to help craft that table in a separate issue and we can issue a follow-up PR. I would recommend at least a small change to that section though along the lines of "These are the attributes in the default behavior using only experimental attributes".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I left the old table as-is for now. The new semconv is documented already in the semconv repo. When we remove this fallback the old table will be removed entirely. Would that be sufficient or do you think we need a table here as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've gotten a lot of requests for showing what attributes are included in instrumentation, especially as different instrumentations (and languages) are in different versions. Folks also ask about other attributes (non-semconv) in different instrumentations, e.g. express.name
, though that's less relevant for http here. The semconv might be in the semconv repo but it doesn't specify what we include, and may not be easily navigable by end users. Ideally we autogenerate a list of attributes vs handcrafting a table though, but with the table already there we may as well use it.
experimental/packages/opentelemetry-instrumentation-http/src/utils.ts
Outdated
Show resolved
Hide resolved
experimental/packages/opentelemetry-instrumentation-http/src/utils.ts
Outdated
Show resolved
Hide resolved
experimental/packages/opentelemetry-instrumentation-http/src/utils.ts
Outdated
Show resolved
Hide resolved
@@ -80,6 +80,7 @@ | |||
"@opentelemetry/core": "1.26.0", | |||
"@opentelemetry/instrumentation": "0.53.0", | |||
"@opentelemetry/semantic-conventions": "1.27.0", | |||
"forwarded-parse": "2.1.2", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for pointing this out - I also had a quick look and it does not seem like there's a easy way to do it 😞
I think using the library is justified.
experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-enable.test.ts
Show resolved
Hide resolved
I think we may want to use the new ATTR_ imports even for old semconv. So the ATTR_ stable attributes should still get imported as-is, but the ATTR_ incubating/experimental attributes should be used and imported from semantic-conventions/incubating.
Updates semconv to 1.27 for server spans.
Metrics to be done in followup.