ccfos/nightingale

Open-source, self-hosted alerting for metrics, logs, and databases. Includes a built-in AI agent and MCP server.

Nightingale – Open‑source Alerting Platform with Built‑in AI

What it is

Nightingale is a self‑hosted alerting system that sits on top of the monitoring stack you already have. It pulls data from Prometheus‑compatible endpoints, VictoriaMetrics, Elasticsearch, Loki, ClickHouse, PostgreSQL and other sources, lets you write alert rules in PromQL, log queries or SQL, and then routes the resulting alerts to the tools your team already uses (Slack, PagerDuty, Discord, Email, Telegram, Jira, …).

A distinctive feature is an integrated AI assistant that can query your monitoring data, explain why an alert fired, suggest or even create new alert rules, and run remediation scripts via a “Skill” system. The AI works with any OpenAI‑compatible model you point it at, so you can keep the model on‑premises if you wish.

Who it’s for

  • Teams that already run a monitoring stack (Prometheus, VictoriaMetrics, Loki, etc.) and want a single place to manage alert rules, view evaluation history, and control notification routing.
  • Organizations that need fine‑grained team ownership of alerts (business groups, LDAP/OIDC auth, permission‑based UI/API).
  • Users who would like an AI‑driven helper for troubleshooting alerts or generating configuration snippets, but do not want to replace their existing collectors or on‑call platforms.

Core capabilities (as described in the README)

Capability What you can do
Multi‑source alerting Write rules using PromQL, log queries, or SQL against any connected data source.
Team ownership & RBAC Group rules by business unit, assign permissions, integrate with OIDC, OAuth2, LDAP, CAS.
Event processing & routing Mute, enrich, rewrite labels, and build conditional pipelines before notifications are sent.
Execution records Browse evaluation queries, historic events, and delivery logs to trace an alert end‑to‑end.
Distributed evaluation Deploy n9e‑edge agents to evaluate rules close to remote data sources.
Built‑in AI assistant Conversational UI that can investigate alerts, generate PromQL/SQL, create or update rules, and run remediation scripts via Skills.
MCP / A2A integration External agents can call Nightingale’s tools through an MCP server; other agents can delegate tasks to the built‑in AI.
Extensible notifications Native integrations for Slack, PagerDuty, Discord, Email, Telegram, Mattermost, Jira, webhooks, plus custom scripts.
Optional collector Bundled Categraf collector for hosts, middleware, databases, network devices; optional embedded TSDB for tiny single‑node setups.

How you would typically use it

  1. Deploy – The repo ships a Docker‑Compose stack (docker/compose-bridge) that brings up Nightingale, MySQL, Redis, VictoriaMetrics and Categraf. You can also run Linux binaries or install via Helm on Kubernetes.
  2. Connect data sources – Add your existing Prometheus‑compatible endpoint or point to the bundled VictoriaMetrics instance.
  3. Create alert rules – Choose a business group, write a PromQL (or log/SQL) expression, set a duration, and save.
  4. Configure notification channels – Set up Slack, PagerDuty, etc., then bind them to the rule via a notification rule.
  5. Monitor & troubleshoot – Use the UI or API to view evaluation logs, event history, and notification results. If something looks odd, ask the AI assistant to investigate.
  6. Automate remediation – Link the AI assistant to the ibex tool (or custom scripts) so that when an alert fires a predefined remediation script can be executed.

Deployment options

  • Docker Compose – Quick local evaluation (default stack).
  • Linux binaries – Download from the GitHub releases; configure via etc/config.toml.
  • Kubernetes – Helm chart in the companion repo flashcatcloud/n9e-helm.

For production you would pin a release, secure credentials/TLS, back up MySQL, and optionally externalize the time‑series storage.

Community & support

  • Slack community, GitHub Discussions, Issues, and a public security policy.
  • Documentation site: https://n9e.github.io/
  • Open‑source under Apache‑2.0.

In short: Nightingale is a full‑featured, self‑hosted alerting platform that integrates with the monitoring tools you already use and adds a conversational AI assistant for faster troubleshooting and rule creation. It is firmly in the observability/alert‑management space rather than a core ML model training framework, but its built‑in AI agent makes it relevant to the “AI‑augmented operations” frontier.

Related

  • Project
  • Project
  • Project
  • Project