Spike: Transactions are just spans without parents #3213
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As part of:
This is an experiment in removing the distinction between Transactions and Spans.
Assumes no data loss
In this PR we've assumed the transition would be non-lossy, so we've given
SpanTracer
all the extra properties and methods thatTransactionTracer
has (see link).I'm not yet sure if this is how Sentry plans to make this work. An alternative could be to downgrade Spans that have no parent (i.e. what we now consider Transactions) to carry only the same subset of information found in Spans today. My guess is that we're unlikely to do that though as customers would then have less information available to them.
Next Steps - Serialization
I need more information about how Sentry's servers will be changed in order to make corresponding changes to
SentryTransaction
andSentrySpan
(those are the immutable DTO's that are used to serialize information captured by the tracers and send that info to Sentry). I've heard rumours that Sentry server might be able to accept envelopes containing only spans (with no associated transaction) but I'm not sure if this is true and, if so, what properties those spans support (see above - are we making them super spans or will the transition be lossy).