Skip to content

alertmanager: retain the cluster name in alert descriptions - #2901

Open
banlor wants to merge 2 commits into
prometheus-operator:mainfrom
banlor:fix/alertmanager-cluster-name
Open

banlor wants to merge 2 commits into
prometheus-operator:mainfrom
banlor:fix/alertmanager-cluster-name

Conversation

@banlor

@banlor banlor commented Oct 3, 2026

Copy link
Copy Markdown

Description

The Alertmanager mixin groups cluster alerts by namespace,service, but inherits a cluster-name annotation that reads job. Aggregation removes job, so several firing alerts describe an unnamed cluster. The same problem was reported in the closed downstream helm-charts issue #4872.

Set alertmanagerClusterName to the retained namespace and service and regenerate the seven cluster descriptions. Member and peer alerts use the same cluster identifier. The upstream Alertmanager mixin's default configuration is unchanged, and custom cluster-name overrides still work.

Example Before After
Two distinct configuration hashes Alertmanager instances within the cluster have different configurations. Alertmanager instances within the monitoring/alertmanager-main cluster have different configurations.

All alert expressions, firing durations, labels, summaries, runbook links, and resource metadata are unchanged.

make generate, make test, and make lint pass. The new Jsonnet regression runs through make test, checks all seven descriptions and custom naming, and fails on the old source. Promtool 3.15.0 also passes seven complete-rule fixtures against the applied source, with firing, pending, and healthy controls; promtool check rules validates all nine generated rules. The notification fixtures configure pagerduty as critical to exercise both severity variants.

This was reproduced while studying alert rules across projects; study results are published only in aggregate. AI assistance was used for source analysis, implementation, and regression tests.

Type of change

  • CHANGE (fix or feature that would cause existing functionality to not work as expected)
  • FEATURE (non-breaking change which adds functionality)
  • BUGFIX (non-breaking change which fixes an issue)
  • ENHANCEMENT (non-breaking change which improves existing functionality)
  • NONE (if none of the other choices apply. Example, tooling, build system, CI, docs, etc.)

Changelog entry

Use namespace and service to name the Alertmanager cluster in alert descriptions.

banlor added 2 commits October 3, 2026 22:39
The cluster rules aggregate by namespace and service, removing job from
several firing alerts. Set the cluster-name template to those retained
labels so descriptions identify the cluster consistently.

Add a Jsonnet regression covering all seven cluster descriptions and
custom naming without changing expressions or other alert fields.

Signed-off-by: Mikhail Basov <michael.s.basov@gmail.com>
Regenerate the Alertmanager PrometheusRule with the namespace/service
cluster-name template. Only the seven cluster descriptions change;
expressions and other alert fields stay the same.

Signed-off-by: Mikhail Basov <michael.s.basov@gmail.com>
@banlor
banlor requested a review from a team as a code owner October 3, 2026 17:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant