diff --git a/cmd/karma/alerts.go b/cmd/karma/alerts.go index c259add51..63ae38090 100644 --- a/cmd/karma/alerts.go +++ b/cmd/karma/alerts.go @@ -266,9 +266,10 @@ func sortGrids(r *http.Request, gridLabel string, gridsMap map[string]models.API } func autoGridLabel(dedupedAlerts []models.AlertGroup) string { - var alertsCount int + var alertsCount, alertGroupsCount int labelNameToValueCount := map[string]map[string]int{} for _, ag := range dedupedAlerts { + alertGroupsCount++ alertsCount += ag.Alerts.Len() for _, alert := range ag.Alerts { for key, val := range alert.Labels { @@ -282,7 +283,7 @@ func autoGridLabel(dedupedAlerts []models.AlertGroup) string { } } } - log.Debug().Int("alerts", alertsCount).Msg("Alerts count for automatic grid label") + log.Debug().Int("alerts", alertsCount).Int("groups", alertGroupsCount).Msg("Alerts count for automatic grid label") candidates := map[string]int{} for key, vals := range labelNameToValueCount { @@ -303,7 +304,7 @@ func autoGridLabel(dedupedAlerts []models.AlertGroup) string { var lastCnt int for key, uniqueValues := range candidates { log.Debug().Int("variants", uniqueValues).Str("label", key).Msg("Automatic grid label candidate") - if uniqueValues == 1 || uniqueValues == alertsCount { + if uniqueValues == 1 || uniqueValues == alertsCount || uniqueValues == alertGroupsCount { continue } if lastCnt == 0 || uniqueValues < lastCnt || (uniqueValues == lastCnt && key > lastLabel) { diff --git a/demo/karma.yaml b/demo/karma.yaml index 866705c8e..b46783da2 100644 --- a/demo/karma.yaml +++ b/demo/karma.yaml @@ -83,7 +83,7 @@ labels: color: "#ff220c" log: config: false - level: warning + level: debug sentry: private: "https://84a9ef37a6ed4fdb80e9ea2310d1ed26:8c6ee6f0ab02406482ff4b4e824e2c27@o185090.ingest.sentry.io/1279017" public: "https://84a9ef37a6ed4fdb80e9ea2310d1ed26@o185090.ingest.sentry.io/1279017"