diff --git a/cmd/collector/app/sanitizer/sanitizer.go b/cmd/collector/app/sanitizer/sanitizer.go index 20da1ada33d9..a17b1351aac8 100644 --- a/cmd/collector/app/sanitizer/sanitizer.go +++ b/cmd/collector/app/sanitizer/sanitizer.go @@ -23,7 +23,13 @@ import ( // span should implement this interface. type SanitizeSpan func(span *model.Span) *model.Span -// NewChainedSanitizer creates a Sanitizer from the variadic list of passed Sanitizers +// StandardSanitizers are automatically applied by SpanProcessor. +var StandardSanitizers []SanitizeSpan = []SanitizeSpan{ + NewEmptyServiceNameSanitizer(), +} + +// NewChainedSanitizer creates a Sanitizer from the variadic list of passed Sanitizers. +// If the list only has one element, it is returned directly to minimize indirection. func NewChainedSanitizer(sanitizers ...SanitizeSpan) SanitizeSpan { if len(sanitizers) == 1 { return sanitizers[0] diff --git a/cmd/collector/app/span_processor.go b/cmd/collector/app/span_processor.go index c7860698e13e..816f5b4837b3 100644 --- a/cmd/collector/app/span_processor.go +++ b/cmd/collector/app/span_processor.go @@ -96,9 +96,7 @@ func newSpanProcessor(spanWriter spanstore.Writer, additional []ProcessSpan, opt } boundedQueue := queue.NewBoundedQueue(options.queueSize, droppedItemHandler) - sanitizers := []sanitizer.SanitizeSpan{ - sanitizer.NewEmptyServiceNameSanitizer(), - } + sanitizers := append([]sanitizer.SanitizeSpan{}, sanitizer.StandardSanitizers...) if options.sanitizer != nil { sanitizers = append(sanitizers, options.sanitizer) }