Add span skip attribute for span metrics generation #1626
Merged
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.
Beyla can directly generate span metrics for quick access to unified metrics and service graphs without the need for trace generation. This mainly done to ensure we can generate accurate metrics even in case of trace sampling with head sampling. Tail sampling doesn't need this option, however it does usually require higher compute cost.
In case we generate span metrics directly from Beyla and we also generate traces, some data will be duplicated if the collector has also enabled the span metrics processor. To help with filtering double counted metrics, this PR introduces a new attribute which will get attached to the spans, signalling that the span metrics are already generated and they can be ignored by the span metrics processor. The span metrics processor can check for this flag and drop the trace sample from metrics.
The new attribute is
span.metrics.skip = true
.