Set the default traceidratio to 1.0 when it is not specified (#2476)

This commit is contained in:
John Watson 2021-01-11 12:30:45 -08:00 committed by GitHub
parent fb029b7d50
commit f1f9cbccc1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 14 deletions

View File

@ -121,9 +121,7 @@ final class TracerProviderConfiguration {
{
Double ratio = config.getDouble("otel.trace.sampler.arg");
if (ratio == null) {
throw new ConfigurationException(
"otel.trace.sampler=traceidratio but otel.trace.sampler.arg is not provided. "
+ "Set otel.trace.sampler.arg to a value in the range [0.0, 1.0].");
ratio = 1.0d;
}
return Sampler.traceIdRatioBased(ratio);
}
@ -135,10 +133,7 @@ final class TracerProviderConfiguration {
{
Double ratio = config.getDouble("otel.trace.sampler.arg");
if (ratio == null) {
throw new ConfigurationException(
"otel.trace.sampler=parentbased_traceidratio but otel.trace.sampler.arg is not "
+ "provided. Set otel.trace.sampler.arg to a value in the "
+ "range [0.0, 1.0].");
ratio = 1.0d;
}
return Sampler.parentBased(Sampler.traceIdRatioBased(ratio));
}

View File

@ -167,9 +167,8 @@ class TracerProviderConfigurationTest {
ConfigProperties.createForTest(
Collections.singletonMap("otel.trace.sampler.arg", "0.5"))))
.isEqualTo(Sampler.traceIdRatioBased(0.5));
assertThatThrownBy(() -> TracerProviderConfiguration.configureSampler("traceidratio", EMPTY))
.isInstanceOf(ConfigurationException.class)
.hasMessageContaining("otel.trace.sampler.arg is not provided");
assertThat(TracerProviderConfiguration.configureSampler("traceidratio", EMPTY))
.isEqualTo(Sampler.traceIdRatioBased(1.0d));
assertThat(TracerProviderConfiguration.configureSampler("parentbased_always_on", EMPTY))
.isEqualTo(Sampler.parentBased(Sampler.alwaysOn()));
assertThat(TracerProviderConfiguration.configureSampler("parentbased_always_off", EMPTY))
@ -180,10 +179,8 @@ class TracerProviderConfigurationTest {
ConfigProperties.createForTest(
Collections.singletonMap("otel.trace.sampler.arg", "0.4"))))
.isEqualTo(Sampler.parentBased(Sampler.traceIdRatioBased(0.4)));
assertThatThrownBy(
() -> TracerProviderConfiguration.configureSampler("parentbased_traceidratio", EMPTY))
.isInstanceOf(ConfigurationException.class)
.hasMessageContaining("otel.trace.sampler.arg is not provided");
assertThat(TracerProviderConfiguration.configureSampler("parentbased_traceidratio", EMPTY))
.isEqualTo(Sampler.parentBased(Sampler.traceIdRatioBased(1.0d)));
assertThatThrownBy(() -> TracerProviderConfiguration.configureSampler("catsampler", EMPTY))
.isInstanceOf(ConfigurationException.class)