metropolis/node/core/metrics: migrate labels to sd-meta naming scheme

Change-Id: Ie5ad32d5383abbe13ff9c347d47ecc10f090bccb
Reviewed-on: https://review.monogon.dev/c/monogon/+/1971
Reviewed-by: Leopold Schabel <leo@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/node/core/metrics/metrics.go b/metropolis/node/core/metrics/metrics.go
index 05377b5..7126459 100644
--- a/metropolis/node/core/metrics/metrics.go
+++ b/metropolis/node/core/metrics/metrics.go
@@ -252,9 +252,9 @@
 			s.sdResp = append(s.sdResp, sdTarget{
 				Targets: []string{n.Status.ExternalAddress},
 				Labels: map[string]string{
-					"kubernetes_worker":     fmt.Sprintf("%t", n.Roles.KubernetesWorker != nil),
-					"consensus_member":      fmt.Sprintf("%t", n.Roles.ConsensusMember != nil),
-					"kubernetes_controller": fmt.Sprintf("%t", n.Roles.KubernetesController != nil),
+					"__meta_metropolis_role_kubernetes_worker":     fmt.Sprintf("%t", n.Roles.KubernetesWorker != nil),
+					"__meta_metropolis_role_kubernetes_controller": fmt.Sprintf("%t", n.Roles.KubernetesController != nil),
+					"__meta_metropolis_role_consensus_member":      fmt.Sprintf("%t", n.Roles.ConsensusMember != nil),
 				},
 			})
 		}
diff --git a/metropolis/node/core/metrics/metrics_test.go b/metropolis/node/core/metrics/metrics_test.go
index ebe9bd4..c583f3a 100644
--- a/metropolis/node/core/metrics/metrics_test.go
+++ b/metropolis/node/core/metrics/metrics_test.go
@@ -201,7 +201,7 @@
 			return fmt.Errorf("Get(%q): code %d", url, res.StatusCode)
 		}
 		body, _ := io.ReadAll(res.Body)
-		want := `[{"targets":["1.2.3.4"],"labels":{"consensus_member":"true","kubernetes_controller":"false","kubernetes_worker":"false"}}]`
+		want := `[{"targets":["1.2.3.4"],"labels":{"__meta_metropolis_role_consensus_member":"true","__meta_metropolis_role_kubernetes_controller":"false","__meta_metropolis_role_kubernetes_worker":"false"}}]`
 		if !strings.Contains(string(body), want) {
 			return util.Permanent(fmt.Errorf("did not find expected value %q in %q", want, string(body)))
 		}