Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keephq/keep
The open-source alert management and AIOps platform
https://github.com/keephq/keep
aiops alarm alarms alerting alerts monitoring monitoring-tool python python3 workflow-automation
Last synced: 3 days ago
JSON representation
The open-source alert management and AIOps platform
- Host: GitHub
- URL: https://github.com/keephq/keep
- Owner: keephq
- License: other
- Created: 2023-02-04T18:43:27.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-25T08:35:38.000Z (18 days ago)
- Last Synced: 2024-11-25T08:44:56.397Z (18 days ago)
- Topics: aiops, alarm, alarms, alerting, alerts, monitoring, monitoring-tool, python, python3, workflow-automation
- Language: Python
- Homepage: https://keephq.dev
- Size: 42.9 MB
- Stars: 4,987
- Watchers: 22
- Forks: 701
- Open Issues: 182
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-platform-engineering-tools - Keep - CLI for alerting
- awesome-opensource-israel - keep - The open-source alerts management and automation platform ![GitHub last commit](https://img.shields.io/github/last-commit/keephq/keep?style=flat-square) ![GitHub top language](https://img.shields.io/github/languages/top/keephq/keep?style=flat-square) (Projects by main language / python)
- awesome-repositories - keephq/keep - The open-source alert management and AIOps platform (TypeScript)
- awesome - keephq/keep - The open-source alert management and AIOps platform (Python)
- awesome-github-repos - keephq/keep - The open-source alert management and AIOps platform (Python)
- jimsghstars - keephq/keep - The open-source alert management and AIOps platform (Python)
- AiTreasureBox - keephq/keep - 12-07_8188_13](https://img.shields.io/github/stars/keephq/keep.svg)|The open-source alert management and AIOps platform| (Repos)
README
The open-source alert management and AIOps platform
Single pane of glass, alert deduplication, enrichment, filtering and correlation, bi-directional integrations, workflows, dashboards.
Docs
ยท
Try it out
ยท
Report Bug
ยท
Book a Demo
ยท
Website
- ๐ **Single pane of glass** - Best-in-class customizable UI for all your alerts and incidents
- ๐ ๏ธ **Swiss Army Knife for alerts** - Deduplication, correlation, filtering and enrichment
- ๐ **Deep integrations** - Bi-directional syncs with monitoring tools, customizable workflows
- โก **[Automation](#workflows)** - GitHub Actions for your monitoring tools
- ๐ค **AIOps 2.0** - AI-powered correlation and summarization> See full [platform documentation](https://docs.keephq.dev).
## Supported Integrations
> View the full list in our [documentation](https://docs.keephq.dev/providers/documentation)
> Missing a provider? [Submit a new provider request](https://github.com/keephq/keep/issues/new?assignees=&labels=provider&projects=&template=new_provider_request.md&title=) and we'll add it quickly!
### Observability Tools
AppDynamics
Axiom
Azure Monitoring
Centreon
Checkmk
Cilium
CloudWatch
Coralogix
Datadog
Dynatrace
Elastic
GCP Monitoring
Grafana
Graylog
Kibana
Netdata
New Relic
OpenObserve
Parseable
Pingdom
Prometheus
Rollbar
Sentry
SignalFX
Site24x7
Splunk
StatusCake
SumoLogic
UptimeKuma
VictoriaMetrics
### Databases & Data Warehouses
BigQuery
ClickHouse
MongoDB
MySQL
PostgreSQL
Snowflake
### Communication Platforms
Discord
Google Chat
Mailchimp
Mailgun
Mattermost
Ntfy.sh
Pushover
Resend
SendGrid
Slack
SMTP
Teams
### Incident Management
Grafana Incident
Grafana OnCall
Ilert
Incident.io
AWS Incident Manager
OpsGenie
PagerDuty
Pagertree
SINGL4
Squadcast
Zenduty
### Ticketing Tools
GitHub
GitLab
Jira
Linear
LinearB
Microsoft Planner
### Container Orchecstration Platforms
Azure AKS
GKE
Kubernetes
OpenShift
### Data Enrichment
Bash
OpenAI
Python
QuickChart
SSH
Webhook
## Workflows
Keep is GitHub Actions for your monitoring tools.
A Keep Workflow is a declarative YAML file that automates your alert and incident management. Each workflow consists of:
- **Triggers** - What starts the workflow (alerts, incidents, schedule or manual)
- **Steps** - Read or fetch data (enrichment, context)
- **Actions** - Execute operations (update tickets, send notifications, restart servers)Here's a simple workflow that creates a Jira ticket for every `critical` alert from `sentry` for `payments` and `api` services.
For more workflows, see [here](https://github.com/keephq/keep/tree/main/examples/workflows).
```yaml
workflow:
id: sentry-alerts
description: create ticket alerts for critical alerts from sentry
triggers:
- type: alert
# customize the filter to run only on critical alert from sentry
filters:
- key: source
value: sentry
- key: severity
value: critical
# regex to match specific services
- key: service
value: r"(payments|ftp)"
actions:
- name: send-slack-message-team-payments
# if the alert is on the payments service, slack the payments team
if: "'{{ alert.service }}' == 'payments'"
provider:
type: slack
# control which Slack configuration you want to use
config: " {{ providers.team-payments-slack }} "
# customize the alert message with context from {{ alert }} or any other {{ step }}
with:
message: |
"A new alert from Sentry: Alert: {{ alert.name }} - {{ alert.description }}
{{ alert}}"
- name: create-jira-ticket-oncall-board
# control the workflow flow with "if" and "foreach" statements
if: "'{{ alert.service }}' == 'ftp' and not '{{ alert.ticket_id }}'"
provider:
type: jira
config: " {{ providers.jira }} "
with:
board_name: "Oncall Board"
custom_fields:
customfield_10201: "Critical"
issuetype: "Task"
# customize the summary
summary: "{{ alert.name }} - {{ alert.description }} (created by Keep)"
description: |
"This ticket was created by Keep.
Please check the alert details below:
{code:json} {{ alert }} {code}"
# enrich the alerts with more context. from now on, the alert will be assigned with the ticket id, type and url
enrich_alert:
- key: ticket_type
value: jira
- key: ticket_id
value: results.issue.key
- key: ticket_url
value: results.ticket_url
```## Enterprise Ready
- **Developer First** - Modern REST APIs, native SDKs, and comprehensive documentation for seamless integration
- **[Enterprise Security](https://docs.keephq.dev/deployment/authentication/overview)** - Full authentication support (SSO, SAML, OIDC, LDAP) with granular access control (RBAC, ABAC) and team management
- **Flexible Deployment** - Deploy on-premises or in air-gapped environments with cloud-agnostic architecture
- **[Production Scale](https://docs.keephq.dev/deployment/stress-testing)** - High availability, performance-tested infrastructure supporting horizontal scaling for enterprise workloads## Getting Started
> Need help? Can't find your environment listed? Reach out on Slack and we'll help you quickly.
Keep can run in various environments and configurations. The easiest way to start is with Keep's Docker Compose.
- Running Keep [locally](https://docs.keephq.dev/development/getting-started).
- Running Keep on [Kubernetes](https://docs.keephq.dev/deployment/kubernetes/installation).
- Running Keep with [Docker](https://docs.keephq.dev/deployment/docker).
- Running Keep on [AWS ECS](https://docs.keephq.dev/deployment/ecs).
- Running Keep on [OpenShift](https://docs.keephq.dev/deployment/kubernetes/openshift).## ๐ซต Keepers
### Top Contributors
A special thanks to our top contributors who help us make Keep great. You are more than awesome!
- [Furkan](https://github.com/pehlicd)
- [Asharon](https://github.com/asharonbaltazar)Want to become a top contributor? Join our Slack and DM Tal, Shahar, or Furkan.
### Contributors
Thank you for contributing and continuously making Keep better, you're awesome ๐ซถ