From f0ec631046689ad71d84dabc9e30363c2a50ba02 Mon Sep 17 00:00:00 2001 From: Jason Wu Date: Wed, 30 Nov 2022 10:55:05 -0500 Subject: [PATCH] Upload soong_build_metrics Test: m nothing Test: m --bazel-mode-dev Test: Verified soong_build_metrics is available in local metrics tables from builds that include this CL Bug: 257537925 Change-Id: Ic5419ecb203c9b62457e1c553d592ba593a9bfff --- cmd/soong_ui/main.go | 4 +++- ui/build/soong.go | 9 +++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/cmd/soong_ui/main.go b/cmd/soong_ui/main.go index 8adc86f4a..928ae172d 100644 --- a/cmd/soong_ui/main.go +++ b/cmd/soong_ui/main.go @@ -117,6 +117,7 @@ func inList(s string, list []string) bool { // Command is the type of soong_ui execution. Only one type of // execution is specified. The args are specific to the command. func main() { + //TODO(juu): Add logic to soong_ui to delete a hardcoded list of metrics files shared.ReexecWithDelveMaybe(os.Getenv("SOONG_UI_DELVE"), shared.ResolveDelveBinary()) buildStarted := time.Now() @@ -184,6 +185,7 @@ func main() { rbeMetricsFile := filepath.Join(logsDir, c.logsPrefix+"rbe_metrics.pb") soongMetricsFile := filepath.Join(logsDir, c.logsPrefix+"soong_metrics") bp2buildMetricsFile := filepath.Join(logsDir, c.logsPrefix+"bp2build_metrics.pb") + soongBuildMetricsFile := filepath.Join(logsDir, c.logsPrefix+"soong_build_metrics.pb") build.PrintOutDirWarning(buildCtx, config) @@ -211,6 +213,7 @@ func main() { files := []string{ buildErrorFile, // build error strings rbeMetricsFile, // high level metrics related to remote build execution. + soongBuildMetricsFile, // high level metrics related to soong build(except bp2build). bp2buildMetricsFile, // high level metrics related to bp2build. soongMetricsFile, // high level metrics related to this build system. config.BazelMetricsDir(), // directory that contains a set of bazel metrics. @@ -219,7 +222,6 @@ func main() { if !config.SkipMetricsUpload() { defer build.UploadMetrics(buildCtx, config, c.simpleOutput, buildStarted, files...) } - defer met.Dump(soongMetricsFile) defer build.CheckProdCreds(buildCtx, config) } diff --git a/ui/build/soong.go b/ui/build/soong.go index b89ca20f0..370b1bc33 100644 --- a/ui/build/soong.go +++ b/ui/build/soong.go @@ -566,11 +566,12 @@ func runSoong(ctx Context, config Config) { targets = append(targets, config.SoongNinjaFile()) } + // TODO(juu): Stop embedding soong_build_metrics in soong_metrics. + soongBuildMetricsFile := filepath.Join(config.LogsDir(), "soong_build_metrics.pb") + if err := os.Remove(soongBuildMetricsFile); err != nil && !os.IsNotExist(err) { + ctx.Verbosef("Failed to remove %s", soongBuildMetricsFile) + } if shouldCollectBuildSoongMetrics(config) { - soongBuildMetricsFile := filepath.Join(config.LogsDir(), "soong_build_metrics.pb") - if err := os.Remove(soongBuildMetricsFile); err != nil && !os.IsNotExist(err) { - ctx.Verbosef("Failed to remove %s", soongBuildMetricsFile) - } defer func() { soongBuildMetrics := loadSoongBuildMetrics(ctx, soongBuildMetricsFile) if soongBuildMetrics != nil {