Skip to content

theiyappan/Netmonitor_NMS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NETMONITOR_NMS

❯ Enterprise-Grade Network Management & Monitoring System

Built with the tools and technologies:


Table of Contents


Overview

Netmonitor_NMS is a comprehensive full-stack application designed for real-time monitoring of network infrastructure. It replaces manual CLI checks with a modern, interactive web dashboard that provides visibility into device health, traffic utilization, and topology.

The system follows a Poller-Collector-Presenter architecture:

  1. Backend (Java/Spring Boot): Handles SNMP polling, data aggregation, and alert generation.
  2. Frontend (React): Visualizes data through dynamic dashboards, topology maps, and interactive charts.

Features

  • ⚡ Real-Time Dashboard: Overview of all managed devices with "Status Circles" providing instant counts of Up, Down, Critical, and Trouble states.
  • 🗺️ Network Topology Map: Interactive, drag-and-drop node-link diagram visualizing the network structure, built with React Flow. It supports "Demo Mode" for testing layout visualization without hardware.
  • 📊 Traffic Analytics: Detailed Recharts area graphs for Interface RX/TX rates with selectable time ranges (1 Hour to 30 Days).
  • 🔍 Auto-Discovery: Scans subnets (CIDR) to automatically identify and add SNMP-enabled devices to the inventory.
  • 🔔 Alerting & Logs: Centralized event log for tracking system errors, startup events, and threshold breaches (e.g., High CPU, Link Down).
  • 📈 Historical Data: Stores raw metrics for immediate analysis and aggregated hourly/daily data for long-term reporting.

Project Structure

└── Netmonitor_NMS/
    ├── backend
    │   ├── .gitignore
    │   ├── pom.xml
    │   └── src
    │       └── main
    │           ├── java/com/network/snmp
    │           │   ├── controller
    │           │   ├── service
    │           │   ├── model
    │           │   └── repository
    │           └── resources
    └── frontend
        ├── .gitignore
        ├── package.json
        ├── public
        └── src
            ├── components
            │   ├── Dashboard.js
            │   ├── InterfaceGraph.js
            │   ├── NetworkMap.js
            │   ├── Dashboard.css
            │   └── InterfaceGraph.css
            ├── App.js
            ├── App.css
            └── index.js

Getting Started

Prerequisites

Before getting started with Netmonitor_NMS, ensure your runtime environment meets the following requirements:

  • Java JDK: Version 17 or higher.
  • Node.js: Version 16 or higher.
  • Database: MySQL (Ensure a database instance is running).
  • Maven: For building the backend.

Installation

1. Clone the Repository

git clone https://github.com/theiyappan/Netmonitor_NMS
cd Netmonitor_NMS

2. Backend Setup Navigate to the backend directory and install dependencies:

cd backend
mvn clean install

Note: Ensure your application.properties or application.yml is configured with your MySQL credentials.

3. Frontend Setup Navigate to the frontend directory and install dependencies:

cd ../frontend
npm install

Usage

Start the Backend Server

cd backend
mvn spring-boot:run

The API server will typically start on http://localhost:8080.

Start the Frontend Client

cd frontend
npm start

The dashboard will launch in your browser at http://localhost:3000.


Project Roadmap

  • Core Monitoring: SNMP Polling, Interface Metrics, Up/Down Status.
  • Visualization: Dashboard, Interactive Topology Map, Historical Graphs.
  • Alerting: Event logging for Critical/Warning states.
  • WMI Integration: Add support for Windows Server monitoring (CPU/RAM/Disk).
  • RBAC: Implement Role-Based Access Control for Admin vs. Viewer users.
  • Distributed Polling: Separate the poller into a microservice for scalability.

Contributing


License

This project is protected under the MIT License. For more details, refer to the LICENSE file.


Acknowledgments

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published