Describe the bug
When configuring the Jaeger remote sampler through declarative (file) configuration, the interval option is silently ignored because JaegerRemoteSamplerComponentProvider.create() reads the wrong config key.
Steps to reproduce
Configure a jaeger_remote/development sampler via declarative config with a non-default interval, e.g.:
jaeger_remote/development:
endpoint: http://localhost:14250
interval: 10000
initial_sampler:
always_off:
The resulting sampler polls every 60000ms instead of the configured 10000ms.
What did you expect to see?
The configured interval value honored. The schema model ExperimentalJaegerRemoteSamplerModel defines the field as @JsonProperty("interval") (Javadoc: "If omitted or null, 60000 is used.").
What did you see instead?
JaegerRemoteSamplerComponentProvider.create() queries config.getLong("internal") instead of config.getLong("interval") (sdk-extensions/jaeger-remote-sampler/.../internal/JaegerRemoteSamplerComponentProvider.java line 50). The nonexistent internal key always returns null, so setPollingInterval is never called and the builder default (60000ms) applies. The sibling keys endpoint and initial_sampler are correct. Introduced in #6494.
What version and what artifacts are you using?
Artifacts: opentelemetry-sdk-extension-jaeger-remote-sampler, opentelemetry-sdk-extension-declarative-config
Version: main @ 09d6c17
Environment
Compiler: Temurin 21
OS: N/A
Additional context
N/A
Describe the bug
When configuring the Jaeger remote sampler through declarative (file) configuration, the
intervaloption is silently ignored becauseJaegerRemoteSamplerComponentProvider.create()reads the wrong config key.Steps to reproduce
Configure a
jaeger_remote/developmentsampler via declarative config with a non-defaultinterval, e.g.:The resulting sampler polls every 60000ms instead of the configured 10000ms.
What did you expect to see?
The configured
intervalvalue honored. The schema modelExperimentalJaegerRemoteSamplerModeldefines the field as@JsonProperty("interval")(Javadoc: "If omitted or null, 60000 is used.").What did you see instead?
JaegerRemoteSamplerComponentProvider.create()queriesconfig.getLong("internal")instead ofconfig.getLong("interval")(sdk-extensions/jaeger-remote-sampler/.../internal/JaegerRemoteSamplerComponentProvider.java line 50). The nonexistentinternalkey always returns null, sosetPollingIntervalis never called and the builder default (60000ms) applies. The sibling keysendpointandinitial_samplerare correct. Introduced in #6494.What version and what artifacts are you using?
Artifacts: opentelemetry-sdk-extension-jaeger-remote-sampler, opentelemetry-sdk-extension-declarative-config
Version: main @ 09d6c17
Environment
Compiler: Temurin 21
OS: N/A
Additional context
N/A