mirror of
https://github.com/prymitive/karma
synced 2026-05-11 03:46:48 +00:00
Add inbibited label to exposed metrics
This commit is contained in:
2
main.go
2
main.go
@@ -45,7 +45,7 @@ var (
|
||||
Name: "unsee_collected_alerts",
|
||||
Help: "Total number of alerts collected from Alertmanager API",
|
||||
},
|
||||
[]string{"silenced"},
|
||||
[]string{"silenced", "inhibited"},
|
||||
)
|
||||
metricAlertGroups = prometheus.NewGauge(
|
||||
prometheus.GaugeOpts{
|
||||
|
||||
21
timer.go
21
timer.go
@@ -57,9 +57,10 @@ func PullFromAlertmanager() {
|
||||
|
||||
acMap := map[string]models.Autocomplete{}
|
||||
|
||||
// counters used to update metrics
|
||||
var counterAlertsSilenced float64
|
||||
var counterAlertsUnsilenced float64
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "true", "inhibited": "true"}).Set(0)
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "true", "inhibited": "false"}).Set(0)
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "false", "inhibited": "true"}).Set(0)
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "false", "inhibited": "false"}).Set(0)
|
||||
|
||||
for _, ag := range alertGroups {
|
||||
// used to generate group content hash
|
||||
@@ -97,9 +98,17 @@ func PullFromAlertmanager() {
|
||||
for _, alert := range alerts {
|
||||
ag.Alerts = append(ag.Alerts, alert)
|
||||
if alert.Silenced != "" {
|
||||
counterAlertsSilenced++
|
||||
if alert.Inhibited {
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "true", "inhibited": "true"}).Inc()
|
||||
} else {
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "true", "inhibited": "false"}).Inc()
|
||||
}
|
||||
} else {
|
||||
counterAlertsUnsilenced++
|
||||
if alert.Inhibited {
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "false", "inhibited": "true"}).Inc()
|
||||
} else {
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "false", "inhibited": "false"}).Inc()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -125,8 +134,6 @@ func PullFromAlertmanager() {
|
||||
alertManagerError = ""
|
||||
errorLock.Unlock()
|
||||
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "true"}).Set(counterAlertsSilenced)
|
||||
metricAlerts.With(prometheus.Labels{"silenced": "false"}).Set(counterAlertsUnsilenced)
|
||||
metricAlertGroups.Set(float64(len(alertStore)))
|
||||
|
||||
store.Store.Update(alertStore, colorStore, acStore)
|
||||
|
||||
Reference in New Issue
Block a user