Skip to content

Conversation

mjq
Copy link
Member

@mjq mjq commented Feb 18, 2025

Update incoming OTLP span name to write to spans' op field instead of description. If a sentry.description attribute is given, write that to the spans' description field.

For background, this change will align with the rest of the product by the time this OTLP endpoint is shipped:

  • product functionality that depends on specific op values/formatting will be removed (replaced with category, which already exists as a Sentry tag but will be generated from span attributes instead of op - PR to follow)
  • with that removed, op and name will have the same semantics and use cases and will be used interchangeably as "name" across the product
  • functionality that depends on particular description values being set (e.g. queries for db spans) will be removed and replaced with references to explicit attributes (e.g. db.query.text)
  • with that done, description will remain as extra context to augment span display in the trace view/explore, to either be passed explicitly as sentry.description in attributes or (in most cases) generated by the system - PR to follow

Sentry's POTel SDKs currently map name to description in the SDK. This will eventually be changed to be in line with the above logic when they update to an OTLP span-based transport.

Update incoming OTLP span `name` to write to spans' `op` field instead of
`description`. If a `sentry.description` attribute is given, write that to the
spans' `description` field.

The intended product behaviour is:
- product functionality that depends on specific `op` values/formatting will be
  removed (replaced with `category`, which already exists but will be generated
  from span attributes instead of `op` - PR to follow)
- with that removed, `op` and `name` have the same semantics and use cases and
  will be made equivalent
- `description` will remain as it is today, to either be passed explicitly as
  `sentry.description` in attributes or generated by the system (PR to follow)

Sentry's POTel SDKs currently map `name` to `description` in the SDK. This will
eventually be changed to be in line with the above logic when they update to an
OTLP span-based transport.
@mjq mjq requested a review from a team as a code owner February 18, 2025 19:44
@mjq mjq marked this pull request as draft February 18, 2025 20:58
@mjq
Copy link
Member Author

mjq commented Feb 18, 2025

Setting as draft to prioritize the span category PR - based on the integration test failures, that one should go in first to minimize test churn.

@mjq mjq marked this pull request as ready for review February 25, 2025 21:21
@mjq
Copy link
Member Author

mjq commented Mar 3, 2025

@Dav1dde @jan-auer gentle ping if either of you have the bandwidth to review this when you're online. Thanks!

@Dav1dde Dav1dde requested a review from jan-auer March 4, 2025 10:56
@mjq mjq enabled auto-merge (squash) March 4, 2025 15:27
@mjq mjq merged commit 0b1dbb2 into master Mar 5, 2025
25 checks passed
@mjq mjq deleted the mjq-otlp-name-mapping branch March 5, 2025 15:40
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.

2 participants