Allow specifying samplers for the OpenTelemetry tracer via a new configuration.#30259
Conversation
|
Hi @samohte, welcome and thank you for your contribution. We will try to review your Pull Request as quickly as possible. In the meantime, please take a look at the contribution guidelines if you have not done so already. |
|
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
75681b0 to
590eb71
Compare
…iguration. Add AlwaysOnSampler as reference implementation. Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com> Signed-off-by: Thomas Ebner <96168670+samohte@users.noreply.github.com> Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
|
Docs for this Pull Request will be rendered here: https://storage.googleapis.com/envoy-pr/30259/docs/index.html The docs are (re-)rendered each time the CI |
|
Sorry for the huge PR. I tried to make the PR as small as possible, but introducing the API without at least one reference implementation does not make much sense. So, I added the API and the AlwaysOnSampler in this PR. There is a unit test failing in the coverage step. But I think this is not related to my changes. |
|
@htuch Thomas works with me at Dynatrace, this is the initial/foundation Sampler addition we discussed in Slack. |
mattklein123
left a comment
There was a problem hiding this comment.
Thanks LGTM. Can you add some type of integration test for this? Thank you.
/wait
Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
…state Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
Thanks for your feedback. I have added an integration test following https://github.com/envoyproxy/envoy/blob/main/test/integration/README.md. The test uses the opentelemetry tracer with the AlwaysOnSampler. |
Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
Signed-off-by: thomas.ebner <thomas.ebner@dynatrace.com>
Signed-off-by: Joao Grassi <joao.grassi@dynatrace.com>
|
@mattklein123 hi! We pushed an integration test. Should be good for another look. Thank you! |
|
Can you merge main please? /wait |
Signed-off-by: Joao Grassi <joao.grassi@dynatrace.com>
Signed-off-by: Joao Grassi <joao.grassi@dynatrace.com>
@mattklein123 done! |
Signed-off-by: Joao Grassi <joao.grassi@dynatrace.com>
Signed-off-by: Joao Grassi <joao.grassi@dynatrace.com>
Commit Message: Allow specifying samplers for the OpenTelemetry tracer via a new configuration. Add AlwaysOnSampler as reference implementation.
Additional Description: The OpenTelemetry project defines the concept of a Sampler API. This PR adds a generic interface to allow to implement a sampler which is used in the existing OpenTelemetry tracer. The change allows to add different samplers in the future, e.g. probabilistic sampler, vendor specific sampler, ..
An AlwaysOnSampler is added as reference implementation.
Risk Level: Low
Testing: multiple unit test, no functional
Docs Changes: Added OpenTelemetry Samplers to trace overview page (see change set)
Release Notes: N/A
Platform Specific Features: N/A
Fixes #29578