Skip to content

Always process spans / AlwaysRecord Sampler #4698

@majanjua-amzn

Description

@majanjua-amzn

What are you trying to achieve?

We'd like to have all generated spans go through the span processors regardless of the decision made by the sampler. This would allow us to aggregate information on all spans without having to incur the cost of sampling all 100% of spans.

What did you expect to see?
A sampler that always returns a sampling decision that includes recording the span, regardless of whether it is or is not sampled, OR the ability for the span processor to interact with spans regardless of the sampling decision.

Additional context.
We've already come up with a solution to this problem in the form of the AlwaysRecordSampling which replaces any DROP decision with RECORD_AND_DROP:

We'd like to contribute this simple solution to the problem ideally directly to the instrumentation repositories (e.g. open-telemetry/opentelemetry-python for python), and alternatively to the contrib repositories.

Tip: React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    sig-issueA specific SIG should look into this before discussing at the specspec:traceRelated to the specification/trace directory

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions