sweet: make it clear which benchmarks failed Currently if there's a failure, you just get a message like "benchmarks failed to execute" but that's not very specific. It can make recent logs look like the culprit, when really it's further up in the log. Change-Id: Ib6ac96335b00418041495e5d1f9a6e2db920d387 Reviewed-on: https://go-review.googlesource.com/c/benchmarks/+/614315 Reviewed-by: Michael Pratt <mpratt@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
diff --git a/sweet/cmd/sweet/run.go b/sweet/cmd/sweet/run.go index fce8f1e..f4fa4b5 100644 --- a/sweet/cmd/sweet/run.go +++ b/sweet/cmd/sweet/run.go
@@ -379,18 +379,18 @@ } // Execute each benchmark for all configs. - var errEncountered bool + var failedBenchmarks []string for _, b := range benchmarks { if err := b.execute(configs, &c.runCfg); err != nil { if c.stopOnError { return err } - errEncountered = true + failedBenchmarks = append(failedBenchmarks, b.name) log.Error(err) } } - if errEncountered { - return fmt.Errorf("failed to execute benchmarks, see log for details") + if len(failedBenchmarks) != 0 { + return fmt.Errorf("failed to execute benchmarks: %s", strings.Join(failedBenchmarks, " ")) } return nil }