Skip to content

Commit 460f1be

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]> (cherry picked from commit 1355d7e) Signed-off-by: Laura Brehm <[email protected]>
1 parent e85edf8 commit 460f1be

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
@@ -360,9 +360,11 @@ func runDocker(ctx context.Context, dockerCli *command.DockerCli) error {
360360

361361
mp := dockerCli.MeterProvider()
362362
if mp, ok := mp.(command.MeterProvider); ok {
363-
if err := mp.Shutdown(ctx); err != nil {
364-
otel.Handle(err)
365-
}
363+
defer func() {
364+
if err := mp.Shutdown(ctx); err != nil {
365+
otel.Handle(err)
366+
}
367+
}()
366368
} else {
367369
fmt.Fprint(dockerCli.Err(), "Warning: Unexpected OTEL error, metrics may not be flushed")
368370
}

0 commit comments

Comments
 (0)