From ff3984e6093672ede542f842148996b36f7d1fab Mon Sep 17 00:00:00 2001 From: Milas Bowman Date: Thu, 15 Jun 2023 12:43:15 -0400 Subject: [PATCH] otel: fix initialization / error-handling (#10717) * If there's no `otel` key (or the value is `null`) in the config, don't return an error * Propagate error from the exporter instead of panicking Signed-off-by: Milas Bowman --- internal/tracing/docker_context.go | 4 ++++ internal/tracing/mux.go | 6 +----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/tracing/docker_context.go b/internal/tracing/docker_context.go index 19b9ac21f..6e0c0217d 100644 --- a/internal/tracing/docker_context.go +++ b/internal/tracing/docker_context.go @@ -94,6 +94,10 @@ func ConfigFromDockerContext(st store.Store, name string) (OTLPConfig, error) { case map[string]interface{}: otelCfg = m[otelConfigFieldName] } + if otelCfg == nil { + return OTLPConfig{}, nil + } + otelMap, ok := otelCfg.(map[string]interface{}) if !ok { return OTLPConfig{}, fmt.Errorf( diff --git a/internal/tracing/mux.go b/internal/tracing/mux.go index c52f548a3..ad5cd1b2e 100644 --- a/internal/tracing/mux.go +++ b/internal/tracing/mux.go @@ -18,7 +18,6 @@ package tracing import ( "context" - "log" "github.com/hashicorp/go-multierror" sdktrace "go.opentelemetry.io/otel/sdk/trace" @@ -36,10 +35,7 @@ func (m MuxExporter) ExportSpans(ctx context.Context, spans []sdktrace.ReadOnlyS return exporter.ExportSpans(ctx, spans) }) } - if err := eg.Wait(); err != nil { - log.Fatal(err) - } - return nil + return eg.Wait() } func (m MuxExporter) Shutdown(ctx context.Context) error {