From d223c816323f62f7e147a44823796d6bf5fc25f3 Mon Sep 17 00:00:00 2001 From: Rasmus Dahlberg Date: Sat, 18 Mar 2023 18:30:52 +0000 Subject: Print stats on shutdown --- utils_housekeep.go | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'utils_housekeep.go') diff --git a/utils_housekeep.go b/utils_housekeep.go index 7a60b27..eb39a7a 100644 --- a/utils_housekeep.go +++ b/utils_housekeep.go @@ -47,21 +47,28 @@ func handleMetrics(ctx context.Context, opts options, logs []metadata.Log, metri } } + output := func(desc string) { + str := "" + for _, log := range logs { + str += sum[*log.Description].String() + } + fmt.Fprintf(os.Stderr, "INFO: %s\n\n%s\n\n", desc, str) + } + defer output("status update before shutdown") + defer time.Sleep(500 * time.Millisecond) + ticker := time.NewTicker(opts.MetricsInterval) defer ticker.Stop() for { select { case <-ctx.Done(): + return case m := <-metricsCh: s := sum[m.Description] s.update(m) sum[m.Description] = s case <-ticker.C: - output := "" - for _, log := range logs { - output += sum[*log.Description].String() - } - fmt.Fprintf(os.Stderr, "INFO: periodic status update\n\n%s\n\n", output) + output("periodic status update") } } } -- cgit v1.2.3