phoenix — это гибкая и настраиваемая платформа мониторинга системы с открытым исходным кодом. Она в основном используется для мониторинга приложений, серверов, баз данных, сетей, TCP-портов и http-интерфейсов. Она передает информацию о тревогах в режиме реального времени при обнаружении отклонений и обеспечивает визуальное представление. система настройки, управления, проверки.
1. Распределенный;
2. Кроссплатформенность;
3. Поддержка развертывания докера;
4. Мониторинг и сигнализация в режиме реального времени;
5. Передача шифрования данных;
6. Гибкий и настраиваемый;
7. Пользовательский интерфейс поддерживает ПК и мобильные терминалы.
приложение
Приложения Java поддерживаются по умолчанию, а контент мониторинга включает в себя: онлайн-статус, JVM и бизнес-ориентацию. Другим приложениям необходимо разработать собственные клиенты для вызова интерфейсов связи с сервером или агентом (интерфейс пульса, интерфейс информации о сервере, интерфейс сигнализации);
JVM
Контент мониторинга включает в себя: память, потоки, классы, сборщик мусора и т. д.;
сервер
Поддержка основных серверов, таких как Linux, Windows, macOS, Unix и т. д.;
Содержимое мониторинга включает в себя: онлайн-статус, операционную систему, процессор, среднюю нагрузку, процесс, диск, память, сетевую карту, батарею и датчики;
база данных
Поддержка MySQL, Oracle, Redis, Mongo;
Мониторинг контента
MySQL: сеанс;
Oracle: сеанс, табличное пространство;
Redis: Полная коллекция информации Redis;
Mongo: Полная коллекция информации Mongo;
Сеть: поддержка мониторинга состояния сети;
TCP: поддержка мониторинга состояния службы TCP;
HTTP: поддержка мониторинга состояния службы HTTP;
Внимание: электронная почта поддерживается по умолчанию.
Функциональная архитектура
логическая архитектура
Мастер3+
Jdk >=1.8, если вы используете Sigar для мониторинга сервера, используйте Jdk 1.8 (от 1.8.0_131 до 1.8.0_241)
Ломбок
MySQL5.7+
Основная платформа: SpringBoot.
Структура безопасности: SpringSecurity, SpringSession.
Планирование задач: JUC, SpringTask, Quartz
Структура слоев персистентности: MyBatis, MyBatis-Plus.
Пул подключений к базе данных: Alibaba Druid
Управление журналами: SLF4J, Logback
Фронтенд-фреймворк: Layui, ECharts.
Система мониторинга: Сигар, Оши
Платформа разработана с использованием Java + Layui + ECharts, а база данных использует MySQL.
phoenix (родительский проект платформы мониторинга) ├── phoenix-common (родительский проект общего модуля мониторинга) │ ├── phoenix-common-core (общий модуль мониторинга ядра) │ └── phoenix-common-web (общий модуль мониторинга WEB) ├── phoenix-client (родительский проект клиента мониторинга) │ ├── phoenix-client-core (клиент мониторинга) │ ├── phoenix-client-spring-boot-starter (клиент мониторинга и стартер интеграции Springboot) │ └── phoenix-client-spring-mvc-integrator (интегратор клиента мониторинга, интегрированный с SpringMVC )├── феникс-агент (агент мониторинга)├── phoenix-server (сервер мониторинга) ├── phoenix-ui (пользовательский интерфейс мониторинга) └── doc (документация)
phoenix: контролирует родительский проект платформы, управляет зависимостями платформы, сборками, плагинами и т. д.;
phoenix-common: общий модуль мониторинга, предоставляющий весь общедоступный код платформы, включая общедоступный модуль ядра мониторинга (phoenix-common-core) и общий модуль WEB мониторинга (phoenix-common-web);
phoenix-client: клиент мониторинга, используемый для интеграции в приложения Java для реализации отслеживания бизнеса и сбора информации о мониторинге приложений Java, включая общий модуль (phoenix-client-core) и стартер, интегрированный с Springboot (phoenix-client-spring-boot- стартер) и интегратор, интегрированный с Springmvc (phoenix-client-spring-mvc-integrator), два модуля расширения;
phoenix-agent: агент мониторинга, используемый для сбора информации о сервере, а также агрегирования и пересылки информации от клиентов мониторинга;
phoenix-server: сервер мониторинга является основным модулем платформы мониторинга. Он используется для агрегирования и анализа информации мониторинга, а также для отправки информации о сигналах тревоги в режиме реального времени при обнаружении отклонений;
phoenix-ui: система визуализации мониторинга, используемая для настройки платформы, управления пользователями, просмотра информации мониторинга, отображения диаграмм и т. д.;
doc: содержит документы по проектированию платформы, сценарии запуска и завершения работы служб, сценарии базы данных и т. д.