Description of problem:
Trying to define multiple receivers in a single user-defined AlertmanagerConfig
Version-Release number of selected component (if applicable):
How reproducible:
always
Steps to Reproduce:
#### Monitoring for user-defined projects is enabled
```
oc -n openshift-monitoring get configmap cluster-monitoring-config -o yaml | head -4
```
```
apiVersion: v1
data:
config.yaml: |
enableUserWorkload: true
```
#### separate Alertmanager instance for user-defined alert routing is Enabled and Configured
```
oc -n openshift-user-workload-monitoring get configmap user-workload-monitoring-config -o yaml | head -6
```
```
apiVersion: v1
data:
config.yaml: |
alertmanager:
enabled: true
enableAlertmanagerConfig: true
```
create testing namespace
oc new-project libor-alertmanager-testing
```
## TESTING - MULTIPLE RECEIVERS IN ALERTMANAGERCONFIG
Single AlertmanagerConfig
`alertmanager_config_webhook_and_email_rootDefault.yaml`
```
apiVersion: monitoring.coreos.com/v1beta1
kind: AlertmanagerConfig
metadata:
name: libor-alertmanager-testing-email-webhook
namespace: libor-alertmanager-testing
spec:
receivers:
- name: 'libor-alertmanager-testing-webhook'
webhookConfigs:
- url: 'http://prometheus-msteams.internal-monitoring.svc:2000/occ-alerts'
- name: 'libor-alertmanager-testing-email'
emailConfigs:
- to: USER@USER.CO
requireTLS: false
sendResolved: true
- name: Default
route:
groupBy:
- namespace
receiver: Default
groupInterval: 60s
groupWait: 60s
repeatInterval: 12h
routes:
- matchers:
- name: severity
value: critical
matchType: '='
continue: true
receiver: 'libor-alertmanager-testing-webhook'
- matchers:
- name: severity
value: critical
matchType: '='
receiver: 'libor-alertmanager-testing-email'
```
Once saved the continue statement is removed from the object.
```
the configuration applied to alertmanager contains continue false statements
```
oc exec -n openshift-user-workload-monitoring alertmanager-user-workload-0 -- amtool config show --alertmanager.url http://localhost:9093
```
route:
receiver: Default
group_by:
- namespace
continue: false
routes:
- receiver: libor-alertmanager-testing/libor-alertmanager-testing-email-webhook/Default
group_by:
- namespace
matchers:
- namespace="libor-alertmanager-testing"
continue: true
routes:
- receiver: libor-alertmanager-testing/libor-alertmanager-testing-email-webhook/libor-alertmanager-testing-webhook
matchers:
- severity="critical"
continue: false <----
- receiver: libor-alertmanager-testing/libor-alertmanager-testing-email-webhook/libor-alertmanager-testing-email
matchers:
- severity="critical"
continue: false <-----
```
If I update the statements to read `continue: true`
and test here: https://prometheus.io/webtools/alerting/routing-tree-editor/
then I get the desired results
workaround is to use 2 separate files - the continue statement is being added.
Actual results:
Once saved the continue statement is removed from the object.
Expected results:
continue true statement is retain and applied to alertmanager
Additional info:
- blocks
-
OCPBUGS-29180 unable to use `continue: true` in user-defined AlertmanagerConfig
-
- Closed
-
- is cloned by
-
OCPBUGS-29180 unable to use `continue: true` in user-defined AlertmanagerConfig
-
- Closed
-
- links to
-
RHEA-2024:0041
OpenShift Container Platform 4.16.z bug fix update