network-monitoring-system

NMS - Monitoring tool for monitoring network devices over LAN

Stars
0
Committers
1

Network Monitoring System

The Network Monitoring System is a robust application designed to monitor and visualize real-time system metrics for network devices. Utilizing a modern tech stack, it offers efficient backend processing, dynamic frontend interaction, and seamless database management.

Demonstration

https://youtu.be/YOM6VJnKgvc?si=Pq1nZB8SswaAqyoS

Technologies Used

Backend

  • Java: Powering the backend logic for robust functionality.
  • Vert.x Core & Vert.x Web: Enabling reactive, high-performance web handling.
  • Logger: Ensuring comprehensive event logging for system monitoring.

Frontend

  • React.js: Driving the frontend with dynamic UI components.
  • Tailwind CSS: Styling the interface for a sleek, responsive design.
  • ApexCharts: Visualizing data with interactive and engaging chart displays.

Database

  • MySQL: Managing and storing system metrics data & alerts generated efficiently and securely.

Features

  • Supports monitoring upto 1,000 devices.
  • Real-time monitoring of CPU, memory, and other vital system metrics.
  • Interactive charting for analyzing historical data trends.
  • User-friendly interface, optimized for usability.
  • Scalable backend architecture ensures seamless performance under varying loads.

Screenshots

Backend APIs

Sr. No. Description Request Type Endpoint
1 Register Device POST /register-device
2 Start Polling GET /start-polling
3 Get System Metrics GET /get-data/:ipAddress
4 Get List of IP Address GET /get-ip-address
5 Get Alerts GET /get-alerts/:ipAddress
6 Clear Alerts DELETE /clear-alerts/:ipAddress
  • Register Device: Add body parameter as follows
    {
        "username": "yash",
        "password": 1234,
        "ip.address": "127.0.0.1",
        "device.type": "linux"
    }
    

Change values according your system configuration. To check IP address, run this following command:

ifconfig | grep broadcast | awk {'print $2'}

GitHub Repo