
nightingale v9.0.0
Движок оповещений с открытым исходным кодом для мониторинга временных рядов. Подключается к Prometheus, VictoriaMetrics, ElasticSearch и другим источникам данных. Поддерживает 20+ каналов уведомлений, снижение шума оповещений, эскалацию и автоматическое восстановление.
Открытое оповещение для вашего существующего стека
Быстрый старт · Документация · Скачать · Релизы · Сообщество
Nightingale объединяет правила оповещений, обработку событий и маршрутизацию уведомлений в одном месте. Подключите Prometheus, VictoriaMetrics, Elasticsearch, Loki, ClickHouse и другие источники данных, которые вы уже используете, а затем доставляйте оповещения в Slack, PagerDuty и существующие инструменты вашей команды.
Self-hosted · Apache-2.0 · Встроенный AI-агент · MCP-сервер
Почему Nightingale?
- Дайте командам контроль над их оповещениями. Организуйте правила в бизнес-группы, назначайте права командам и управляйте правилами и настройками уведомлений через UI и API.
- Соберите разрозненные оповещения в одном месте. Вычисляйте правила по метрикам, логам и SQL-источникам данных, сохраняя существующие коллекторы, хранилища и дашборды Grafana.
- Поймите, что произошло с оповещением. Изучайте записи вычисления правил, исторические события и результаты уведомлений, чтобы проследить путь запроса вплоть до доставки.
Быстрый старт
Если установлены Git и Docker Compose, запустите входящий в комплект стек для оценки:
git clone https://github.com/ccfos/nightingale.git
cd nightingale/docker/compose-bridge
docker compose up -d
Это запускает Nightingale, MySQL, Redis, VictoriaMetrics и Categraf. Откройте http://localhost:17000 и войдите с учётными данными root / root.2020.
Чтобы получить первое оповещение:
- Подключите источник данных. Добавьте существующую конечную точку, совместимую с Prometheus, или используйте
http://victoriametrics:8428для экземпляра VictoriaMetrics в этом стеке Compose. - Создайте правило оповещения. Выберите бизнес-группу и источник данных, затем введите выражение PromQL. Для теста, срабатывающего всегда, используйте
vector(1) > 0и установите длительность0. - Настройте доставку. Настройте канал уведомлений, создайте правило уведомления и привяжите его к правилу оповещения. Убедитесь, что тестовое уведомление приходит, затем отключите тестовое оповещение.
Стек Compose использует примерные учётные данные и открывает порты сервисов для локальной оценки. Измените учётные данные и проверьте сетевой доступ перед развёртыванием на общем или публичном хосте. См. варианты развёртывания для других способов запуска Nightingale.
Как это встраивается в ваш стек
Nightingale опрашивает ваши источники данных, вычисляет условия оповещений, обрабатывает события и маршрутизирует уведомления. Ваши существующие данные остаются в текущих хранилищах.
Оставьте Grafana для визуализации, а вашу платформу дежурств — для планирования, эскалации и реагирования на инциденты. Nightingale также включает дашборды для команд, которые хотят исследовать данные вместе с оповещениями.
Начинаете без стека мониторинга? Автономная конфигурация включает опциональную встроенную TSDB для небольших развёртываний на одном экземпляре. Categraf — опциональный коллектор для хостов, промежуточного ПО, баз данных и сетевых устройств.
Ключевые возможности
| Возможность | Что вы можете делать |
|---|---|
| Оповещения по источникам данных | Используйте PromQL, запросы к логам или SQL для определения условий. Применяйте правило к нескольким экземплярам одного типа источника данных. |
| Командное владение | Группируйте правила и дашборды по бизнес-группам, назначайте права командам и подключайте OIDC, OAuth2, LDAP или CAS для входа. |
| Обработка и маршрутизация событий | Отключайте уведомления, подписывайтесь на оповещения, обогащайте или переписывайте метки и маршрутизируйте события через условные конвейеры. |
| Записи выполнения оповещений | Просматривайте запросы и результаты вычислений, активные и исторические события, а также записи о доставке уведомлений. |
| Переиспользуемые интеграции | Начните с поставляемых конфигураций коллекторов, правил оповещений и дашбордов. Проверьте запросы и пороги для вашей среды перед их включением. |
| Распределённое вычисление | Распределяйте правила между движками оповещений и используйте n9e-edge для вычисления оповещений рядом с удалёнными источниками данных. |
Интеграции уведомлений включают Slack, PagerDuty, Discord, Email, Telegram, Mattermost, Jira и Jira Service Management, а также HTTP-вебхуки и скрипты для пользовательских назначений. См. справочник по встроенным каналам уведомлений для деталей конфигурации.
Для автоматизированного реагирования подключите ibex, чтобы запускать предопределённые скрипты исправления при срабатывании оповещения.
Встроенный AI-агент
Nightingale включает AI-агента, которого можно использовать прямо в веб-интерфейсе. Агент работает внутри Nightingale, вызывает инструменты для проверки ваших данных мониторинга и конфигурации и выполняет задачи за несколько шагов.
- Исследуйте алерты. Запрашивайте связанные метрики и логи, изучайте затронутые хосты и объясняйте результаты на основе полученных данных.
- Устраняйте неполадки в процессе алертинга. Изучайте правила, журналы вычислений, настройки отключения уведомлений, обработку событий и результаты уведомлений, чтобы выяснить, почему алерт не сработал или не дошёл до адресата.
- Создавайте и обновляйте конфигурацию. Создавайте правила алертинга и дашборды, генерируйте PromQL и SQL, настраивайте правила уведомлений, отключения уведомлений и подписки в ходе диалога. Встроенные инструменты для обновления существующих правил алертинга и дашбордов предлагают изменения для подтверждения.
- Расширяйте возможности с помощью Skills. Встроенные Skills охватывают типовые рабочие процессы мониторинга. Добавляйте процедуры вашей команды, справочные материалы и скрипты в виде пользовательских Skills, включая Skills, импортированные из Git.
Например: