-
Notifications
You must be signed in to change notification settings - Fork 585
Description
Problem Statement
https://github.com/jmacd/rust-sampler contains a prototype implementation of the OTEP-235 and OTEP-250 drafts which are now SDK sampling specifications.
Proposed Solution
The PR above serves as a reference for the complete scope of work. It's too large to submit as one PR, there are 4+ separate topic areas:
- randomness handling
- tracestate handling
- consistent probability sampler
- composable samplers
Alternatives
This work is available for contributors to pick up.
Prior Art
There are Java, Golang, Python, Javascript implementations as well that we can study.
Additional Context
The probability sampling specification:
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/tracestate-probability-sampling.md
Tracestate handling:
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/tracestate-handling.md
New probability sampler:
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/sdk.md#probabilitysampler
Composite/composable samplers:
https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/sdk.md#compositesampler