Environmental & Server
Monitoring System
EMS-IoT adalah sistem pemantauan ruang server terpadu yang mengintegrasikan Environmental Monitoring (7 parameter sensor via ESP32) dan Server Infrastructure Monitoring (host metrics via SNMP) ke dalam satu platform pemantauan operasional real-time.
Arsitektur sistem mengintegrasikan transmisi MQTT HiveMQ Cloud menuju backend Go pada server Ubuntu berbasis database SQLite lokal via Docker untuk penyimpanan telemetri yang andal, efisien, dan berkinerja tinggi.
Pemantauan kontinu 7 parameter sensor lingkungan via ESP32 dan metrik server host via SNMP agent.
Penyimpanan database SQLite lokal pada server Ubuntu via Docker dengan mode WAL, journaling terisolasi, dan akses data telemetri yang cepat dan konsisten.
Agregasi backend Go: resolusi 1 menit untuk jendela ≤24 jam (1H, 6H, 12H, 24H) dan 10 menit untuk 7 hari, dengan visual downsampling grafik Recharts.
Status ketersediaan host server dan durasi aktif sistem dalam format hari, jam, dan menit.
Alokasi memori fisik host server dengan kalkulasi persentase dan pemantauan free memory.
Kecepatan transfer data (Mbps) dan akumulasi byte total serta core interface dengan deteksi counter reset.
Beban utilisasi prosesor host server pada tiga jendela waktu dengan visual downsampling grafik.
Node fisik ESP32 mengakuisisi 7 sensor lingkungan dan SNMP agent mengumpulkan telemetri sistem server.
Data dipublikasikan ke HiveMQ Cloud MQTT dengan proteksi worker queue, retry, disk spool, dan cache idempotency.
Backend Go memproses telemetri, menghitung timer pintu otoritatif, dan mengagregasi bucket 1 menit (≤24 jam) serta 10 menit (7 hari).
Data persistensi dikelola secara efisien menggunakan database SQLite lokal via Docker pada server Ubuntu untuk penyimpanan telemetri sensor dan metrik server.
Next.js merender grafik dengan visual downsampling, animasi dimatikan untuk performa, dan auto-pause saat background.
Node ESP32 (SHT31, INMP441, MQ-135, MQ-2, MC-38, PIR) dan Host SNMP agent memantau CPU, RAM, Uptime, & Traffic.
Broker MQTT cloud dengan 3 worker goroutines, buffer queue 2048 task, retry exponential backoff, dan fallback disk spooling 5000 records.
Layanan Go berkinerja tinggi yang menangani agregasi waktu (1m & 10m), status pintu otoritatif, serta pemrosesan telemetri sensor.
Backend server Ubuntu memanfaatkan SQLite lokal via Docker dengan mode WAL untuk efisiensi transaksi dan integritas data telemetri.
Integrasi bot Telegram dan gateway Fonnte WhatsApp untuk pengiriman notifikasi alert instan otomatis saat sensor mendeteksi kondisi Warning dan Critical.
Dashboard modern dengan visual downsampling grafik, animasi dinonaktifkan untuk efisiensi, dan auto-pause saat tab nonaktif.