Skip to content

Named Grafana schedule triggers ignore alerts after the first batch item #395

Description

@Calmingstorm

Confirmed named-trigger omission in multi-alert batches

Reviewed master at 886c36d8ebe861aa987059a1744d45b78797baae (v4.7.0). Suggested priority: P2.

Grafana's parser preserves all alerts in a webhook batch, but the webhook scheduling event takes alert_name only from the first item. The scheduler matcher compares a configured name filter only against that scalar.

Isolated reproduction

Parse a valid batch with names FIRST and SECOND; construct the handler's event and evaluate a trigger with source=grafana, alert_name=SECOND.

parsed names: ['FIRST', 'SECOND']
event alert_name: FIRST
SECOND named trigger: false
catch-all Grafana trigger: true

Independently reproduced three times from pinned parser/matcher code. No Grafana endpoint, schedule or live channel was used.

Impact / expected behavior

A schedule configured for a named alert misses that alert solely because another alert precedes it in the same valid payload. This is not a claim that all Grafana triggering is broken; catch-all and first-item matches still work.

Acceptance criteria

  • Evaluate named filters against all applicable alerts in the received batch.
  • Explicitly define once-per-batch versus once-per-matching-alert execution; avoid multiplying catch-all actions accidentally.
  • Preserve AND matching and clarify which alert provides severity/instance metadata.
  • Test matching second/later alerts, repeated matching alerts and catch-all schedules.

Behavior change: previously missed named alerts activate their schedules; batch cardinality needs a documented decision. No source changes were made.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions