Simple alerting tool, builtin providers (e.g. sentry/datadog or slack/pagerduty), 100% open sourced, free forever.
- Simple and intuitive (GitHub actions-like) syntax.
- Declarative alerting that can be easily managed and versioned in your version control and service repository.
- Alerts from multiple data sources for added context and insights.
- Freedom from vendor lock-in, making it easier to switch to a different observability tool if and when needed.
Get started »
Roadmap
·
Examples
·
Providers
·
Docs
·
Website
·
Add Providers
·
Report Bug
·
Slack Community
Keep is a simple CLI tool that contains everything you need to start creating Alerts.
- 10s of providers ready to use with your own data
- Simple CLI tool to configure, trigger and test your alerts
- Easily deployable via docker, vercel, github actions, etc.
- Alerts are managed by simple yaml files that are human-readable
Brought to you by developers, EASY to use and managable by code.
Providers are Keep's way of interacting with 3rd party products; Keep uses them either to query data or to send notifications.
We tried our best to cover all common providers, missing any?, providers include:
- Cloud: AWS, GCP, Azure, etc.
- Monitoring: Sentry, New Relic, Datadog, etc.
- Incident Management: PagerDuty, OpsGenie, etc.
- Communication: Email, Slack, Discord, Microsoft Teams, etc.
- and more...
Try our first mock alert and get it up and running in <5 minutes - Ready? Let's Go! ⏰
git clone https://github.com/keephq/keep.git && cd keep
pip install .
or
poetry shell
poetry install
keep version
Get a Slack incoming webhook using this tutorial and use Keep to configure it:
keep config provider --provider-type slack --provider-id slack-demo
Paste the Slack Incoming Webhook URL (e.g. https://hooks.slack.com/services/...) and you're good to go 👌
**If you don't want to create your own webhook, you can follow these easy 3 steps:**
-
Go to keep's slack.
-
Enter the # alerts-playground channel.
-
In the channel's topic, you can find the webhook provided by Keep.
Go to keep's slack.
Enter the # alerts-playground channel.
In the channel's topic, you can find the webhook provided by Keep.
keep run --alerts-file examples/alerts/db_disk_space.yml
Configure the Slack provider (See "Run locally" on how to obtain the webhook URL)
docker run -v ${PWD}:/app -it keephq/cli config provider --provider-type slack --provider-id slack-demo
You should now have a providers.yaml file created locally
Run Keep and execute our example "Paper DB has insufficient disk space" alert
docker run -v ${PWD}:/app -it keephq/cli -j run --alert-url https://raw.githubusercontent.com/keephq/keep/main/examples/alerts/db_disk_space.yml
Click the Deploy to Render button to deploy Keep as a background worker running in Render
To run Keep and execute our example "Paper DB has insufficient disk space" alert, you will need to configure you Slack provider.
When clicking the Deploy to Render button, you will be asked to provide the KEEP_PROVIDER_SLACK_DEMO
environment variable, this is the expected format:
{"authentication": {"webhook_url": "https://hooks.slack.com/services/..."}}
* Refer to Run locally on how to obtain the webhook URL
Wanna have your alerts up and running in production? Go through our more detailed Deployment Guide
- Share feedback/ask questions via our Slack
- Explore the full list of supported providers
- Explore the documentation
- Adding a new provider
- Check out our website
Thank you for contributing and continuously making Keep better, you're awesome 🫶