Skip to content

MyEdit/ServiceMonitor_QtBoost

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛰️ ServiceMonitor

Система мониторинга сервисов (pet-project)
Цель: изучение Boost 1.89.0, асинхронного программирования и сетевых операций. GUI: Qt 6.9.3.


📌 О проекте

ServiceMonitor — это приложение для периодического опроса сервисов (HTTP, TCP, ICMP Ping) с определением статуса UP / DOWN и замером времени отклика.
Проект создаётся как учебный, с фокусом на Boost.Asio, chrono, работу с конфигами и логированием.


🧰 Стек технологий

  • Boost 1.89.0
    • Boost.Asio — таймеры (asio::steady_timer), асинхронный TCP/Ping
    • Boost.Chrono — измерение времени отклика
    • Boost.Log — запись логов
    • Boost.Format — красивое форматирование
  • Json-Nlohman-3.12.0
  • Qt 6.9.3 — UI, сигналы/слоты
  • C++20

🗺 Roadmap

  • Инициализация репозитория (шаблон проекта)
  • Подключение Qt 6.9.3
  • Подключение Boost 1.89.0

🔧 Конфигурация и инфраструктура

  • Выбор и подключение JSON-парсера (nlohmann/json или Qt JSON)
  • Структура данных для ServiceConfig
  • Парсинг JSON-конфига
  • Валидация конфигурации (обязательные поля, типы)
  • Загрузка конфига при старте приложения
  • Горячая перезагрузка конфига (опционально)

🌐 Реализация проверок

  • Базовый интерфейс AbstractChecker
  • Реализация TCP-проверки (Boost.Asio)
  • Реализация ICMP Ping (Boost.Asio)
  • Реализация HTTP-проверки

⏱ Тайминги и статистика

  • Периодический опрос (asio::steady_timer)
  • Сбор времени отклика (Boost(STL).Chrono)
  • Базовая статистика (last/min/max/avg)

🧾 Логирование

  • Singleton Logger с потокобезопасностью
  • Файловое и консольное логирование через Boost.Log
  • Логи в UI

🖥 Пользовательский интерфейс (Qt)

  • Qt UI — таблица сервисов
  • Цветовые индикаторы UP/DOWN
  • Автообновление UI от фоновых потоков
  • Страница со статистикой (avg/min/max)

🎯 Финализация

  • Релиз

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages