Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Environment Variable Installation and Configuration of Jaeger Remote Sampler #6256

Open
pwinters-tanium opened this issue Oct 15, 2024 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers sampler: jaegerremote

Comments

@pwinters-tanium
Copy link

pwinters-tanium commented Oct 15, 2024

Problem Statement

The jaeger remote sampler does not currently support auto installation or configuration using the standard OTEL_TRACES_SAMPLER and OTEL_TRACES_SAMPLER_ARG environment variables (see Environment Variable Specification). Although this is not explicitly required by Otel specifications, it is a common practice that allows an application's tracing to be configured for different contexts without recompilation.

Proposed Solution

The OTel golang SDK should automatically use the jaeger remote sampler when OTEL_TRACES_SAMPLER equals jaeger_remote.

The installed Jaeger Remote Sampler should use configuration values drawn by parsing OTEL_TRACES_SAMPLER_ARG as a comma separated list of key=value pairs that include keys endpoint, pollingIntervalMs, and initialSamplingRate.

For jaeger_remote and parentbased_jaeger_remote: The value [of OTEL_TRACES_SAMPLER_ARG] is a comma separated list:

  • endpoint: the endpoint in form of scheme://host:port of gRPC server that serves the sampling strategy for the service (sampling.proto).
  • pollingIntervalMs: in milliseconds indicating how often the sampler will poll the backend for updates to sampling strategy.
  • initialSamplingRate: in the [0..1] range, which is used as the sampling probability when the backend cannot be reached to retrieve a sampling strategy. This value stops having an effect once a sampling strategy is retrieved successfully, as the remote strategy will be used until a new update is retrieved.

Example: endpoint=http://localhost:14250,pollingIntervalMs=5000,initialSamplingRate=0.25

Reference: Docs - Specs - OTel 1.38.0 - Configuration - Env var

@dmathieu dmathieu added the good first issue Good for newcomers label Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers sampler: jaegerremote
Projects
None yet
Development

No branches or pull requests

2 participants