phoenix adalah platform pemantauan sistem sumber terbuka yang fleksibel dan dapat dikonfigurasi. Hal ini terutama digunakan untuk memantau aplikasi, server, database, jaringan, port TCP dan antarmuka http. Ini mendorong informasi alarm secara real time ketika kelainan ditemukan, dan menyediakan visual sistem untuk konfigurasi, manajemen, Periksa.
1. Didistribusikan;
2. Lintas platform;
3. Mendukung penerapan buruh pelabuhan;
4. Pemantauan dan peringatan waktu nyata;
5. Transmisi enkripsi data;
6. Fleksibel dan dapat dikonfigurasi;
7. Antarmuka pengguna mendukung PC dan terminal seluler.
aplikasi
Aplikasi Java didukung secara default, dan konten pemantauan meliputi: status online, JVM, dan fokus bisnis. Aplikasi lain perlu mengembangkan klien mereka sendiri untuk memanggil antarmuka untuk berkomunikasi dengan server atau agen (antarmuka detak jantung, antarmuka informasi server, antarmuka alarm);
JVM
Konten pemantauan meliputi: memori, thread, kelas, GC, dll.;
server
Mendukung server utama, seperti Linux, Windows, macOS, Unix, dll.;
Konten pemantauan meliputi: status online, sistem operasi, CPU, beban rata-rata, proses, disk, memori, kartu jaringan, baterai, dan sensor;
basis data
Mendukung MySQL, Oracle, Redis, Mongo;
Pantau konten
MySQL: sesi;
Oracle: sesi, ruang tabel;
Redis: Kumpulan informasi Redis yang lengkap;
Mongo: Kumpulan informasi Mongo lengkap;
Jaringan: Mendukung pemantauan status jaringan;
TCP: Mendukung pemantauan status layanan TCP;
HTTP: Mendukung pemantauan status layanan HTTP;
Peringatan: Email didukung secara default.
Arsitektur fungsional
arsitektur logis
Maven3+
Jdk >=1.8, jika menggunakan Sigar untuk memonitor server, gunakan Jdk 1.8 (1.8.0_131 hingga 1.8.0_241)
Lombok
Mysql5.7+
Kerangka inti: SpringBoot
Kerangka keamanan: SpringSecurity, SpringSession
Penjadwalan tugas: JUC, SpringTask, Quartz
Kerangka lapisan persistensi: MyBatis, MyBatis-Plus
Kumpulan koneksi basis data: Alibaba Druid
Manajemen log: SLF4J, Logback
Kerangka kerja front-end: Layui, ECharts
Kerangka pemantauan: Sigar, oshi
Platform dikembangkan menggunakan Java + Layui + ECharts, dan database menggunakan MySQL.
phoenix (proyek induk platform pemantauan) ├── phoenix-common (memantau proyek induk modul umum) │ ├── phoenix-common-core (memantau modul umum inti) │ └── phoenix-common-web (memantau modul umum WEB) ├── phoenix-client (memantau proyek induk klien) │ ├── phoenix-client-core (klien pemantauan) │ ├── phoenix-client-spring-boot-starter (pemantauan klien dan starter integrasi springboot) │ └── phoenix-client-spring-mvc-integrator (integrator klien pemantauan terintegrasi dengan springmvc )├── agen phoenix (agen pemantau)├── phoenix-server (server pemantauan) ├── phoenix-ui (pemantauan UI) └── doc (dokumentasi)
phoenix: memantau proyek induk platform, mengelola dependensi platform, build, plug-in, dll.;
phoenix-common: memantau modul umum, menyediakan semua kode publik platform, termasuk modul publik inti pemantauan (phoenix-common-core) dan modul umum pemantauan WEB (phoenix-common-web);
phoenix-client: Klien pemantauan, digunakan untuk berintegrasi ke dalam aplikasi Java untuk mengimplementasikan pelacakan bisnis dan pengumpulan informasi pemantauan aplikasi Java, termasuk modul umum (phoenix-client-core) dan starter yang terintegrasi dengan springboot (phoenix-client- spring-boot- starter) dan integrator terintegrasi dengan dua modul ekspansi springmvc (phoenix-client-spring-mvc-integrator);
phoenix-agent: Agen pemantau, digunakan untuk mengumpulkan informasi server dan mengumpulkan serta meneruskan informasi dari klien pemantau;
phoenix-server: Server pemantauan adalah modul inti dari platform pemantauan. Ini digunakan untuk mengumpulkan dan menganalisis informasi pemantauan, dan mendorong informasi alarm secara real-time ketika ditemukan kelainan;
phoenix-ui: Sistem visualisasi pemantauan, digunakan untuk konfigurasi platform, manajemen pengguna, pemantauan tampilan informasi, tampilan grafik, dll.;
doc: Berisi dokumen desain platform, skrip startup dan shutdown layanan, skrip database, dll.