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

Update Sampler descriptions #511

Merged
merged 4 commits into from
Mar 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions api/trace/never_sampler.go → api/trace/always_off_sampler.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,17 @@ import (
)

const (
neverSamplerDescription = "NeverSampleSampler"
alwaysOffSamplerDescription = "AlwaysOffSampler"
)

var neverSampledecision = Decision{Sampled: false}
var alwaysOffSamplerDecision = Decision{Sampled: false}

type neverSampleSampler struct{}
type alwaysOffSampler struct{}

// ShouldSample implements Sampler interface.
// It always returns a Decision with Sampled value set to false
// and with Attributes set to an empty slice.
func (ns neverSampleSampler) ShouldSample(
func (ns alwaysOffSampler) ShouldSample(
_ core.SpanContext,
_ bool,
_ core.TraceID,
Expand All @@ -39,17 +39,17 @@ func (ns neverSampleSampler) ShouldSample(
_ []core.KeyValue,
_ []Link,
) Decision {
return neverSampledecision
return alwaysOffSamplerDecision
}

// Description implements Sampler interface.
// It returns the description of this sampler.
func (ns neverSampleSampler) Description() string {
return neverSamplerDescription
func (ns alwaysOffSampler) Description() string {
return alwaysOffSamplerDescription
}

var _ Sampler = neverSampleSampler{}
var _ Sampler = alwaysOffSampler{}

func NeverSampleSampler() Sampler {
return neverSampleSampler{}
func AlwaysOffSampler() Sampler {
return alwaysOffSampler{}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,17 @@ import (
)

func TestNeverSamperShouldSample(t *testing.T) {
gotD := NeverSampleSampler().ShouldSample(
gotD := AlwaysOffSampler().ShouldSample(
core.SpanContext{}, false, core.TraceID{}, core.SpanID{}, "span", SpanKindClient, []core.KeyValue{}, []Link{})
wantD := Decision{Sampled: false}
if diff := cmp.Diff(wantD, gotD); diff != "" {
t.Errorf("Decision: +got, -want%v", diff)
}
}

func TestNeverSamplerDescription(t *testing.T) {
gotDesc := NeverSampleSampler().Description()
wantDesc := neverSamplerDescription
func TestAlwaysOffSamplerDescription(t *testing.T) {
gotDesc := AlwaysOffSampler().Description()
wantDesc := alwaysOffSamplerDescription
if diff := cmp.Diff(wantDesc, gotDesc); diff != "" {
t.Errorf("Description: +got, -want%v", diff)
}
Expand Down
20 changes: 10 additions & 10 deletions api/trace/always_sampler.go → api/trace/always_on_sampler.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,17 @@ import (
)

const (
alwaysSamplerDescription = "AlwaysSampleSampler"
alwaysOnSamplerDescription = "AlwaysOnSampler"
)

var alwaysSampleDecision = Decision{Sampled: true}
var alwaysOnSamplerDecision = Decision{Sampled: true}

type alwaysSampleSampler struct{}
type alwaysOnSampler struct{}

// ShouldSample implements Sampler interface.
// It always returns a Decision with Sampled value set to true
// and with Attributes set to an empty slice.
func (as alwaysSampleSampler) ShouldSample(
func (as alwaysOnSampler) ShouldSample(
_ core.SpanContext,
_ bool,
_ core.TraceID,
Expand All @@ -39,17 +39,17 @@ func (as alwaysSampleSampler) ShouldSample(
_ []core.KeyValue,
_ []Link,
) Decision {
return alwaysSampleDecision
return alwaysOnSamplerDecision
}

// Description implements Sampler interface.
// It returns the description of this sampler.
func (as alwaysSampleSampler) Description() string {
return alwaysSamplerDescription
func (as alwaysOnSampler) Description() string {
return alwaysOnSamplerDescription
}

var _ Sampler = alwaysSampleSampler{}
var _ Sampler = alwaysOnSampler{}

func AlwaysSampleSampler() Sampler {
return alwaysSampleSampler{}
func AlwaysOnSampler() Sampler {
return alwaysOnSampler{}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,18 @@ import (
"go.opentelemetry.io/otel/api/core"
)

func TestShouldSample(t *testing.T) {
gotD := AlwaysSampleSampler().ShouldSample(
func TestAlwaysOnSamplerShouldSample(t *testing.T) {
gotD := AlwaysOnSampler().ShouldSample(
core.SpanContext{}, false, core.TraceID{}, core.SpanID{}, "span", SpanKindClient, []core.KeyValue{}, []Link{})
wantD := Decision{Sampled: true}
if diff := cmp.Diff(wantD, gotD); diff != "" {
t.Errorf("Decision: +got, -want%v", diff)
}
}

func TestDescription(t *testing.T) {
gotDesc := AlwaysSampleSampler().Description()
wantDesc := alwaysSamplerDescription
func TestAlwaysOnSamplerDescription(t *testing.T) {
gotDesc := AlwaysOnSampler().Description()
wantDesc := alwaysOnSamplerDescription
if diff := cmp.Diff(wantDesc, gotDesc); diff != "" {
t.Errorf("Description: +got, -want%v", diff)
}
Expand Down
2 changes: 1 addition & 1 deletion sdk/trace/sampling.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ func (ps probabilitySampler) Description() string {

// ProbabilitySampler samples a given fraction of traces. Fractions >= 1 will
// always sample. If the parent span is sampled, then it's child spans will
// automatically be sampled. Fractions <0 are treated as zero, but spans may
// automatically be sampled. Fractions < 0 are treated as zero, but spans may
// still be sampled if their parent is.
func ProbabilitySampler(fraction float64) Sampler {
if fraction >= 1 {
Expand Down