metropolis/node/core/metrics: allow exporters without executables
Change-Id: I8f05c5a2a59018e8979c48a0253f2c068a71e5cd
Reviewed-on: https://review.monogon.dev/c/monogon/+/1949
Tested-by: Jenkins CI
Reviewed-by: Serge Bazanski <serge@monogon.tech>
diff --git a/metropolis/node/core/metrics/metrics.go b/metropolis/node/core/metrics/metrics.go
index 631a9d1..05377b5 100644
--- a/metropolis/node/core/metrics/metrics.go
+++ b/metropolis/node/core/metrics/metrics.go
@@ -110,6 +110,10 @@
// Start all exporters as sub-runnables.
for _, exporter := range s.Exporters {
+ if exporter.Executable == "" {
+ continue
+ }
+
cmd := exec.CommandContext(ctx, exporter.Executable, exporter.Arguments...)
err := supervisor.Run(ctx, exporter.Name, func(ctx context.Context) error {
return supervisor.RunCommand(ctx, cmd)
@@ -117,7 +121,6 @@
if err != nil {
return fmt.Errorf("running %s failed: %w", exporter.Name, err)
}
-
}
// And register all exporter forwarding functions on a mux.