Dev 1 #1

Merged
KerradKerridi merged 5 commits from dev-1 into main 2025-09-03 22:02:24 +00:00
KerradKerridi commented 2025-09-03 21:58:51 +00:00 (Migrated from github.com)

🚀 Основные улучшения (коммит 567e5b3)

1. Система мониторинга с задержками алертов

  • Добавлены настраиваемые задержки для предотвращения ложных срабатываний:
    • CPU: 5 секунд задержки
    • RAM: 10 секунд задержки
    • Диск: 15 секунд задержки
  • Улучшенная логика алертов с отслеживанием времени первого превышения порога
  • Интервал обновления статуса: настраиваемый пользователем

2. Новый модуль PID Manager

  • Создан pid_manager.py для управления процессами всех ботов
  • Автоматическое создание и очистка PID файлов
  • Интеграция с системой мониторинга
  • Подробная документация в README_PID_MANAGER.md

3. Улучшенный Metrics Collector

  • Рефакторинг логики сбора метрик (576 строк добавлено, 184 удалено)
  • Улучшенное логирование и обработка алертов
  • Поддержка мониторинга Docker контейнеров
  • Автоматическое определение ОС и окружения

4. Расширенный Makefile

  • Новые команды для тестирования:
    • make test - запуск всех тестов
    • make test-infra - тесты инфраструктуры
    • make test-bot - тесты Telegram бота
    • make test-coverage - тесты с отчетом о покрытии
  • Проверка зависимостей для тестирования
  • Команды для мониторинга и диагностики

5. Новые зависимости

  • Добавлена библиотека requests>=2.28.0 в requirements.txt
  • Обновлены зависимости для тестирования

6. Расширенное тестирование

  • Создан test_alert_delays.py (230 строк) для тестирования механизма задержек
  • Улучшен test_message_sender.py (92 строки)
  • Обновлены существующие тесты для совместимости с новыми функциями

�� Улучшения Docker и инфраструктуры (коммит 18d6f3d)

1. Docker Compose обновления

  • Добавлен volume voice_users для Telegram бота
  • Улучшенные health checks для всех сервисов
  • Оптимизированные настройки ресурсов для бота

2. Grafana Dashboard улучшения

  • Обновлены выражения для активных и общих пользователей
  • Интервал проверки статуса изменен на 4 часа

�� Рефакторинг Grafana Dashboard (коммит ec62183)

1. Оптимизация метрик

  • Упрощены выражения для команд и ошибок (per minute расчеты)
  • Улучшены заголовки для лучшего понимания
  • Обновлены цветовые схемы для лучшей видимости
  • Удалены устаревшие метрики и упрощена структура

🗂️ Управление проектом (коммит ea0ec8a)

1. Обновление .gitignore

  • Добавлена директория /bots/* для исключения ботов
  • Удалены подпроекты из отслеживания
  • Улучшена структура исключений

⚙️ Новые переменные окружения (env.template)

# Новые настройки мониторинга
STATUS_UPDATE_INTERVAL_MINUTES=2
CPU_ALERT_DELAY=30
RAM_ALERT_DELAY=45
DISK_ALERT_DELAY=60
THRESHOLD=80.0
RECOVERY_THRESHOLD=75.0

🧪 Система тестирования

1. Новые тесты

  • Тестирование задержек алертов для предотвращения ложных срабатываний
  • Тестирование PID менеджера для управления процессами
  • Улучшенное покрытие существующих модулей

2. Команды тестирования

make test           # Все тесты
make test-infra     # Тесты инфраструктуры  
make test-bot       # Тесты бота
make test-coverage  # С отчетом о покрытии

�� Статистика изменений

  • Всего файлов изменено: 14
  • Строк добавлено: 1,337
  • Строк удалено: 184
  • Основные области:
    • Система мониторинга: +576 строк
    • PID Manager: +161 строка
    • Тестирование: +230 строк
    • Документация: +188 строк

🎯 Ключевые улучшения производительности

  1. Предотвращение ложных алертов через систему задержек
  2. Автоматическое управление процессами через PID Manager
  3. Улучшенная диагностика через расширенный Makefile
  4. Оптимизированные метрики в Grafana Dashboard
  5. Комплексное тестирование всех компонентов

## 🚀 **Основные улучшения (коммит 567e5b3)** ### 1. **Система мониторинга с задержками алертов** - **Добавлены настраиваемые задержки для предотвращения ложных срабатываний:** - CPU: 5 секунд задержки - RAM: 10 секунд задержки - Диск: 15 секунд задержки - **Улучшенная логика алертов** с отслеживанием времени первого превышения порога - **Интервал обновления статуса:** настраиваемый пользователем ### 2. **Новый модуль PID Manager** - **Создан `pid_manager.py`** для управления процессами всех ботов - **Автоматическое создание и очистка PID файлов** - **Интеграция с системой мониторинга** - **Подробная документация** в `README_PID_MANAGER.md` ### 3. **Улучшенный Metrics Collector** - **Рефакторинг логики сбора метрик** (576 строк добавлено, 184 удалено) - **Улучшенное логирование и обработка алертов** - **Поддержка мониторинга Docker контейнеров** - **Автоматическое определение ОС и окружения** ### 4. **Расширенный Makefile** - **Новые команды для тестирования:** - `make test` - запуск всех тестов - `make test-infra` - тесты инфраструктуры - `make test-bot` - тесты Telegram бота - `make test-coverage` - тесты с отчетом о покрытии - **Проверка зависимостей** для тестирования - **Команды для мониторинга и диагностики** ### 5. **Новые зависимости** - **Добавлена библиотека `requests>=2.28.0`** в `requirements.txt` - **Обновлены зависимости** для тестирования ### 6. **Расширенное тестирование** - **Создан `test_alert_delays.py`** (230 строк) для тестирования механизма задержек - **Улучшен `test_message_sender.py`** (92 строки) - **Обновлены существующие тесты** для совместимости с новыми функциями ## �� **Улучшения Docker и инфраструктуры (коммит 18d6f3d)** ### 1. **Docker Compose обновления** - **Добавлен volume `voice_users`** для Telegram бота - **Улучшенные health checks** для всех сервисов - **Оптимизированные настройки ресурсов** для бота ### 2. **Grafana Dashboard улучшения** - **Обновлены выражения** для активных и общих пользователей - **Интервал проверки статуса** изменен на 4 часа ## �� **Рефакторинг Grafana Dashboard (коммит ec62183)** ### 1. **Оптимизация метрик** - **Упрощены выражения** для команд и ошибок (per minute расчеты) - **Улучшены заголовки** для лучшего понимания - **Обновлены цветовые схемы** для лучшей видимости - **Удалены устаревшие метрики** и упрощена структура ## 🗂️ **Управление проектом (коммит ea0ec8a)** ### 1. **Обновление .gitignore** - **Добавлена директория `/bots/*`** для исключения ботов - **Удалены подпроекты** из отслеживания - **Улучшена структура** исключений ## ⚙️ **Новые переменные окружения (env.template)** ```bash # Новые настройки мониторинга STATUS_UPDATE_INTERVAL_MINUTES=2 CPU_ALERT_DELAY=30 RAM_ALERT_DELAY=45 DISK_ALERT_DELAY=60 THRESHOLD=80.0 RECOVERY_THRESHOLD=75.0 ``` ## 🧪 **Система тестирования** ### 1. **Новые тесты** - **Тестирование задержек алертов** для предотвращения ложных срабатываний - **Тестирование PID менеджера** для управления процессами - **Улучшенное покрытие** существующих модулей ### 2. **Команды тестирования** ```bash make test # Все тесты make test-infra # Тесты инфраструктуры make test-bot # Тесты бота make test-coverage # С отчетом о покрытии ``` ## �� **Статистика изменений** - **Всего файлов изменено:** 14 - **Строк добавлено:** 1,337 - **Строк удалено:** 184 - **Основные области:** - Система мониторинга: +576 строк - PID Manager: +161 строка - Тестирование: +230 строк - Документация: +188 строк ## 🎯 **Ключевые улучшения производительности** 1. **Предотвращение ложных алертов** через систему задержек 2. **Автоматическое управление процессами** через PID Manager 3. **Улучшенная диагностика** через расширенный Makefile 4. **Оптимизированные метрики** в Grafana Dashboard 5. **Комплексное тестирование** всех компонентов ---
Sign in to join this conversation.