Skip to content

Greater flexibility when creating alert conditions #54732

@lobsterkatie

Description

@lobsterkatie

Problem Statement

Right now, when creating a conditional alert, you have two choices: match all conditions, or match any condition. This prevents conditions like if animal = dog and fur = brown and breed in [catahoula, pit bull, chow] and if (animal = dog and fur = brown) or (animal = cat and fur = white) from being applied.

One example use case, submitted by a user, is to have one of the conditions be a match to one of several different tags (similar to my first example above), but one can imagine more complex conditions being desired.

Right now, the only workarounds are a) use the SDK to add an alert-specific tag to events which should trigger the rule, b) create multiple rules, which are almost but not quite the same, or c) build an internal integration to forward the alert data to some other service, which can then run the full conditions. Obviously, none of these is great.

Solution Brainstorm

Simpler solutions, which would handle the user's case in the linked issue:

  • In addition to a match being able to be equals, starts with, contains, etc., add an is one of option, which then would take a comma separated list of values.
  • Similar to the above, but add a matches regex option.

More complicated solution:

  • Allow combining conditions more flexibly with ANDs and ORs. I get that in theory this could allow a user to create a frankenstein rule out of rules which really should be separate, but it would allow for a one-rule-per-resulting-action paradigm, which actually IMHO isn't a terrible way to think about alerts.

Product Area

Alerts

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status

    No status

    Status

    Waiting for: Product Owner

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions