Overview
Triggers in Keep Workflow Engine define when a workflow is executed. Triggers are the starting point for workflows and can be configured to respond to a variety of events, conditions, or schedules. A workflow can have one or multiple triggers, and these triggers determine the specific circumstances under which the workflow is initiated. Examples include manual invocation, time-based schedules, or event-driven actions like alerts or incident updates. Triggers are defined under thetriggers
section of a workflow YAML file. Each trigger has a type
and optional additional configurations or filters.
Supported Trigger Types
Manual Trigger
Used to execute workflows on demand.Interval Trigger
Runs workflows at a regular time.Alert Trigger
Executes a workflow when an alert is received.If no filters or CEL expressions are specified, the workflow will be executed
for every alert that comes in.
Filtering Alerts
There are two ways to filter alerts in Keep:1. CEL-based Filtering (Recommended)
Keep uses Common Expression Language (CEL) for filtering alerts. CEL provides a powerful and flexible way to express conditions using a simple expression language.- String matching:
source.contains("prometheus")
- Exact matching:
severity == "critical"
- Multiple conditions:
source.contains("datadog") && severity == "critical"
- Pattern matching:
name.contains("error") || name.contains("failure")
- Complex conditions:
(source.contains("datadog") && severity == "critical") || (source.contains("newrelic") && severity == "error")