mirror of
https://github.com/argoproj/argo-cd.git
synced 2026-02-20 01:28:45 +01:00
* add appset metrics Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * cleanup Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * cleanup Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * address comments and fix test parallelism issue Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * fix controller unit tests - add metrics to tests Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * lint Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * lint Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * Add FakeAppsetMetrics to clear up registry and create metrics structure for tests without causing collisions Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * Change fake metrics implementation Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> * Fix typo Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> --------- Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io> Co-authored-by: pashakostohrys <pavel@codefresh.io>
21 lines
564 B
Go
21 lines
564 B
Go
package metrics
|
|
|
|
import (
|
|
"fmt"
|
|
"regexp"
|
|
)
|
|
|
|
// Prometheus invalid labels, more info: https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels.
|
|
var invalidPromLabelChars = regexp.MustCompile(`[^a-zA-Z0-9_]`)
|
|
|
|
func NormalizeLabels(prefix string, labels []string) []string {
|
|
results := []string{}
|
|
for _, label := range labels {
|
|
// prometheus labels don't accept dash in their name
|
|
curr := invalidPromLabelChars.ReplaceAllString(label, "_")
|
|
result := fmt.Sprintf("%s_%s", prefix, curr)
|
|
results = append(results, result)
|
|
}
|
|
return results
|
|
}
|