Why Keep? · Getting started · Supported tools and integrations · Docs · Try it out · Website · Report Bug · Slack Community
Keep makes it easy to consolidate all your alerts into a single pane of glass and to orchestrate workflows to automate your end-to-end processes.
Enrich any tool with Datadog Workflow Automation like capabilities.
- Connect your tools: Connect everything from monitoring platforms to databases and ticketing systems.
- Set up Workflows: Initiate automated workflows in response to alerts or based on custom intervals.
- Operational efficiency: Automate your alert handling to focus your team's efforts on what really matters.
- Centralized dashboard: Manage all your alerts across different platforms in a single interface.
- Noise reduction: Deduplicate and correlate alerts to reduce alert fatigue.
- Automation: Trigger workflows for alert enrichment and response.
- Developer-first: Keep is API-first and lets you manage your workflows as code.
- Works with every tool: Plenty of supported providers and more to come.
The easiest way of thinking about Workflow in Keep is GitHub Actions. At its core, a Workflow in Keep is a declarative YAML file, composed of triggers, steps, and actions and serves to manage, enrich, and automate responses to alerts:
workflow:
id: most-basic-keep-workflow
description: send a slack message when a cloudwatch alarm is triggered
# workflow triggers - supports alerts, interval, and manual triggers
triggers:
- type: alert
filters:
- key: source
value: cloudwatch
- type: manual
# list of steps that can add context to your alert
steps:
- name: enrich-alert-with-more-data-from-a-database
provider:
type: bigquery
config: "{{ providers.bigquery-prod }}"
with:
query: "SELECT customer_id, customer_type as date FROM `customers_prod` LIMIT 1"
# list of actions that can automate response and do things with your alert
actions:
- name: trigger-slack
provider:
type: slack
config: " {{ providers.slack-prod }} "
with:
message: "Got alarm from aws cloudwatch! {{ alert.name }}"
Workflow triggers can either be executed manually when an alert is activated or run at predefined intervals. More examples can be found here.
Missing any? Just submit a new provider issue and we will add it in the blink of an eye.
Keep composed of three main components:
- Keep UI - A NextJS app to connect your providers, centralize alerts and create the workflows.
- Keep Backend - A FastAPI server that implements the business logic behind Keep, including integrating with the tools, working with alerts and scheduling and running the workflows.
- Keep CLI - A CLI that lets you control and manage Keep via CLI.
Disclaimer: we use PostHog to collect anonymous telemetries to better learn how users use Keep (masked screen recordings for CLI commands) To turn PostHog off, set the
DISABLE_POSTHOG=true
environment variable and remove theNEXT_PUBLIC_POSTHOG_KEY
environment variable.
The easiest way to start with Keep is to run it via docker-compose:
wget -O docker-compose.yml https://raw.githubusercontent.com/keephq/keep/main/docker-compose.yml
docker-compose -f docker-compose.yml up
The UI is now available at http://localhost:3000 and the backend is available at http://localhost:8080.
You can also start Keep within your favorite IDE, e.g. VSCode
Wanna get Keep up and running in production? Go through our detailed development guide
Thank you for contributing and continuously making Keep better, you're awesome 🫶