diff --git a/sdk/trace/batch_span_processor.go b/sdk/trace/batch_span_processor.go index 8607142d976..302c4559dea 100644 --- a/sdk/trace/batch_span_processor.go +++ b/sdk/trace/batch_span_processor.go @@ -132,8 +132,10 @@ func (bsp *BatchSpanProcessor) Shutdown(ctx context.Context) error { go func() { close(bsp.stopCh) bsp.stopWait.Wait() - if err := bsp.e.Shutdown(ctx); err != nil { - otel.Handle(err) + if bsp.e != nil { + if err := bsp.e.Shutdown(ctx); err != nil { + otel.Handle(err) + } } close(wait) }() diff --git a/sdk/trace/batch_span_processor_test.go b/sdk/trace/batch_span_processor_test.go index ccab718e5ff..263d8dbad3f 100644 --- a/sdk/trace/batch_span_processor_test.go +++ b/sdk/trace/batch_span_processor_test.go @@ -22,6 +22,7 @@ import ( "time" "github.com/stretchr/testify/assert" + "go.opentelemetry.io/otel/trace" export "go.opentelemetry.io/otel/sdk/export/trace"