Skip to content

Commit 1355d7e

Browse files
committed
telemetry: fix early meterprovider shutdown
In 4b5a196, we changed the CLI global meter provider shutdown in order to handle any error returned by the metric export. Unfortunately, we dropped a `defer` during the fix, which causes the meter provider to be immediately shutdown after being created and metrics to not be collected/exporter. Signed-off-by: Laura Brehm <[email protected]>
1 parent a5fb752 commit 1355d7e

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

cmd/docker/docker.go

+5-3
Original file line numberDiff line numberDiff line change
@@ -358,9 +358,11 @@ func runDocker(ctx context.Context, dockerCli *command.DockerCli) error {
358358

359359
mp := dockerCli.MeterProvider()
360360
if mp, ok := mp.(command.MeterProvider); ok {
361-
if err := mp.Shutdown(ctx); err != nil {
362-
otel.Handle(err)
363-
}
361+
defer func() {
362+
if err := mp.Shutdown(ctx); err != nil {
363+
otel.Handle(err)
364+
}
365+
}()
364366
} else {
365367
fmt.Fprint(dockerCli.Err(), "Warning: Unexpected OTEL error, metrics may not be flushed")
366368
}

0 commit comments

Comments
 (0)