🤖 AI-Powered DevOps

Забудь про ручную
диагностику навсегда

AI DevOps Assistant анализирует логи твоих серверов в реальном времени, автоматически находит причины сбоев и предлагает готовые bash-команды для исправления. Работает на базе DeepSeek V4 Flash.

Возможности платформы

Всё, что нужно для спокойного сна администратора

🔍

Умный анализ логов

Система собирает логи за последние 5 минут, находит stack traces, критические паттерны и вычисляет уровень опасности по собственной шкале.

🧠

AI-диагностика

Нейросеть анализирует логи, конфиги и kernel logs, затем возвращает причину сбоя, список затронутых сервисов и команды для исправления.

Real-time дашборд

WebSocket доставляет новые инциденты мгновенно. Фильтры, статистика, детальная информация и возможность закрыть инцидент в один клик.

📱

Telegram-уведомления

Критические и высокие инциденты моментально прилетают в Telegram с причиной, командами и временем обнаружения в твоём часовом поясе.

🔒

Безопасность

Whitelist путей для чтения, JWT-аутентификация между агентом и бэкендом.

🛠

Ручной анализ

Запусти диагностику любого сервиса по требованию — агент соберёт логи и отправит их на анализ, даже если триггеров ещё не было.

Как это выглядит

Тёмная тема, минимализм, никакой рекламы

📊 Дашборд со статистикой
Лента инцидентов Цветовые индикаторы приоритета, бейджи статуса, score и время с момента обнаружения.
🧠 Детали инцидента
AI-анализ Причина, распределение очков, предложенные команды, файлы для изменения и логи.
📱 Telegram-уведомление
Алерты в кармане Уведомления приходят прямо в Telegram с копируемыми bash-командами.

📚 Документация AI DevOps

Полное руководство по установке, настройке и использованию системы

1. Установка на сервер

Агент AI DevOps устанавливается одной командой и не требует ручной настройки systemd — всё делается автоматически.

Шаг 1: Запустите установщик

Выполните команду на сервере, который нужно мониторить:

🔄 Генерация вашей персональной команды...

Что делает установщик:

  • Устанавливает зависимости: python3, python3-venv, curl, jq
  • Создаёт виртуальное окружение в /opt/ai-devops-agent/
  • Скачивает актуальный код агента (server.py) с бэкенда
  • Создаёт дефолтный конфиг /etc/ai-devops/services.yml
  • Регистрирует агента и сохраняет JWT в /etc/ai-devops/agent.credentials
  • Настраивает и запускает systemd-сервис ai-devops-agent.service

Шаг 2: Настройте сервисы

Отредактируйте /etc/ai-devops/services.yml под ваши нужды:

services:
      nginx:
        type: systemd
        unit: nginx.service
        logs:
          - /var/log/nginx/error.log
          - journalctl -u nginx
        config_files:
          - /etc/nginx/nginx.conf
      myapp:
        type: docker
        container: myapp-prod
        logs: docker logs myapp-prod

Перезапустите агента: sudo systemctl restart ai-devops-agent

2. Фильтр логов

Агент не отправляет на бэкенд всё подряд — встроенный LogProcessor фильтрует шум и оставляет только значимые события.

Что игнорируется (False Positives)

Эти паттерны не считаются ошибками:

  • 404 not found — обычная ситуация для favicon.ico и сканеров
  • health check — штатные проверки балансировщиков
  • handled error, connection aborted — контролируемые разрывы
  • broken pipe, parsing error, debug

Что считается ошибкой (Error Patterns)

Регулярные выражения для поиска проблем:

  • Traceback, Exception, Error:
  • panic:, FATAL, stack trace
  • failed, critical

Паттерны восстановления (Recovery)

Если в логах после ошибки появились эти строки — инцидент считается решённым автоматически:

  • connection established, recovered
  • fallback activated, backup connected
  • retry succeeded, service started

Безопасность файлов (SecureFileReader)

Агент читает только файлы из whitelist. Заблокированы:

  • /etc/shadow, /etc/ssh/
  • /root/, /home/*/
  • /etc/ssl/private/

3. Система подсчёта очков

Каждое событие оценивается по шкале опасности. От суммы очков зависит действие системы.

Пороговые значения

0–29 очков Игнорируется
30–69 очков Предупреждение (warning)
70+ очков Полноценный инцидент (incident)

Начисление очков

СобытиеОчки
Stack Trace (Python/Node/Go/Java)+50
Service Down (не отвечает, crashed)+100
Service Degraded (flapping, restarting, unhealthy)+30
Критический паттерн (OOM, kernel panic, deadlock)+50
Уникальная базовая ошибка+10
Повтор одинаковой ошибки+5 (макс. +40)

Приоритеты инцидентов

  • CRITICAL — 100+ очков. Telegram-уведомление обязательно.
  • HIGH — 70–99 очков. Telegram-уведомление.
  • MEDIUM — 30–69 очков. Только в дашборде.
  • LOW — менее 30 очков (обычно info).

Проверка восстановления

При достижении порога 70+ система ждёт 3 минуты, проверяя статус сервиса каждые 10 секунд. Если за это время:

  • Сервис вернулся в штатный режим 3 раза подряд → создаётся "тихий" инцидент (без LLM-анализа).
  • Сервис не восстановился → полноценный инцидент с AI-диагностикой.

4. Ручной анализ

Вы можете принудительно запустить диагностику любого сервиса, даже если триггеров ещё не было.

Как использовать

  1. В дашборде нажмите кнопку 🔍 Ручной анализ в верхней панели.
  2. Введите имя сервиса точно так, как оно указано в services.yml (например, nginx).
  3. При необходимости добавьте комментарий (например, "странное поведение после деплоя").
  4. Нажмите 🚀 Запустить анализ.

Что происходит под капотом

  • Бэкенд создаёт задачу и кладёт её в очередь для вашего агента.
  • Агент забирает задачу, собирает логи за последние 5 минут, конфиги и kernel logs.
  • Все данные анонимизируются и отправляются обратно.
  • AI (DeepSeek V4 Flash) анализирует информацию и выставляет собственный score.
  • Результат появляется в ленте с пометкой 🔍 Ручной.

Если логов нет

Если сервис не пишет логи за последние 5 минут — создаётся информационная запись с пометкой "Логи отсутствуют". Это нормально для стабильно работающих сервисов.

5. Уведомления

Критические и высокие инциденты мгновенно отправляются в Telegram.

Привязка Telegram

  1. Откройте дашборд и нажмите на колокольчик 🔔 в верхней панели.
  2. Нажмите кнопку "Открыть Telegram-бота" — откроется чат с ботом.
  3. Нажмите Start в Telegram — привязка произойдёт автоматически.

Если кнопка не сработала (например, вы уже общались с ботом ранее) — воспользуйтесь ручной привязкой через команду /link.

Формат уведомлений

В Telegram приходит сообщение с:

  • Эмодзи приоритета (🔴 CRITICAL, 🟠 HIGH, 🟡 MEDIUM, 🟢 LOW)
  • Время обнаружения в вашем часовом поясе
  • Имя сервиса и приоритет
  • Причина сбоя (от AI)
  • Готовые bash-команды для исправления (в блоках кода — копируются одним кликом)

Отключение уведомлений

В любой момент можно отвязать Telegram через ту же модалку настроек → кнопка 🔕 Отвязать уведомления.

6. Тарифы и планы

🚧

Раздел в разработке

Сейчас мы тестируем систему на реальных инфраструктурах и подбираем оптимальную модель монетизации. Информация о тарифах появится здесь в ближайшее время.

← На главную
⚙️

AI DevOps

● Нет соединения
admin
0
Всего
0
Критический
0
Высокий
0
Средний
0
Открыто
Загрузка инцидентов...