From de9e1d9dce54238390f787f7103736a2351948e0 Mon Sep 17 00:00:00 2001 From: WrenIX Date: Fri, 1 Nov 2024 19:58:06 +0100 Subject: [PATCH] fix(infra-monitoring): alertmanager config adjust and make groupBy configurable --- infra-monitoring/README.adoc | 19 ++++++++++++------- .../alertmanager/alertmanager-config.yaml | 8 +++++--- infra-monitoring/values.yaml | 13 ++++++++++--- 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/infra-monitoring/README.adoc b/infra-monitoring/README.adoc index f9a9ec6..b5e5401 100644 --- a/infra-monitoring/README.adoc +++ b/infra-monitoring/README.adoc @@ -110,16 +110,16 @@ image::https://img.shields.io/badge/Version-application-informational?style=flat | `""` | +| alertmanager.inhibitRules +| list +| `[]` +| additional inhibitRules + | alertmanager.receiver.customs | object | `{}` | customs -| alertmanager.receiver.inhibitRules -| list -| `[]` -| additional inhibitRules - | alertmanager.receiver.matrix.default | string | `"!example-room:matrix.org"` @@ -200,12 +200,17 @@ image::https://img.shields.io/badge/Version-application-informational?style=flat | `false` | -| alertmanager.receiver.repeatInterval +| alertmanager.route.groupBy +| list +| `["namespace","alertname"]` +| groupBy + +| alertmanager.route.repeatInterval | string | `"24h"` | repeat Interval -| alertmanager.receiver.routes +| alertmanager.route.routes | list | `[]` | would overwrite defaults (like ntfy or matrix) # send every alert to ntfy # (and continue to routing for that alert) - receiver: "ntfy-default" continue: true # send selected alerts to special matrix room # (and remove them for evaluation - no continue) - receiver: "matrix-room-name" matchers: - name: "team" matchType: "=" value: "room-name" # all reminig alerts to matrix default room - receiver: "matrix-default" diff --git a/infra-monitoring/templates/alertmanager/alertmanager-config.yaml b/infra-monitoring/templates/alertmanager/alertmanager-config.yaml index 383d0fd..232931c 100644 --- a/infra-monitoring/templates/alertmanager/alertmanager-config.yaml +++ b/infra-monitoring/templates/alertmanager/alertmanager-config.yaml @@ -106,17 +106,19 @@ spec: route: groupWait: "30s" groupInterval: "10m" + {{- with .Values.alertmanager.route.groupBy }} groupBy: - - "namespace" + {{- toYaml . | nindent 6 }} + {{- end }} receiver: "null" - repeatInterval: {{ .Values.alertmanager.receiver.repeatInterval }} + repeatInterval: {{ .Values.alertmanager.route.repeatInterval }} routes: - receiver: "null" matchers: - name: "alertname" matchType: "=~" value: "InfoInhibitor|Watchdog" - {{- with .Values.alertmanager.receiver.routes }} + {{- with .Values.alertmanager.route.routes }} {{- toYaml . | nindent 6 }} {{- end }}{{/* end-with routes */}} - receiver: "default" diff --git a/infra-monitoring/values.yaml b/infra-monitoring/values.yaml index 6b1d6bd..d882167 100644 --- a/infra-monitoring/values.yaml +++ b/infra-monitoring/values.yaml @@ -64,7 +64,10 @@ alertmanager: anonymous: enabled: false - receiver: + # -- additional inhibitRules + inhibitRules: [] + + route: # -- would overwrite defaults (like ntfy or matrix) # # send every alert to ntfy # # (and continue to routing for that alert) @@ -80,10 +83,14 @@ alertmanager: # # all reminig alerts to matrix default room # - receiver: "matrix-default" routes: [] - # -- additional inhibitRules - inhibitRules: [] + # -- groupBy + groupBy: + - namespace + - alertname # -- repeat Interval repeatInterval: "24h" + + receiver: # -- customs customs: {} matrix: