Skip to content

Latest commit

 

History

History
53 lines (43 loc) · 1.94 KB

File metadata and controls

53 lines (43 loc) · 1.94 KB

Remote System Monitoring Tool

Overview

This project provides a Remote System Monitoring Tool using Flask and Streamlit. The tool allows users to monitor system statistics (CPU, memory, disk usage, network stats) from remote machines within the same network by retrieving real-time data via a REST API.

Features

  • Remote System Monitoring: Fetch system info from remote machines.
  • Auto-Refresh: Select refresh interval for real-time updates.
  • Multi-PC Support: Save and select multiple IPs to monitor different machines.
  • Data Export: Download system statistics as JSON or CSV files.
  • Persistent IP Storage: Saved IPs are stored in a file (saved_ips.json) for future use.

Installation

Prerequisites

  • Python 3.x installed
  • pip package manager

Install Dependencies

Run the following command to install required dependencies:

pip install -r requirements.txt

Usage

1. Start the Flask Server on the Remote Machine

Run the following command on the machine you want to monitor:

python server.py

The server will start on port 5001, listening on all interfaces (0.0.0.0).

2. Run the Streamlit Dashboard on Your Local Machine

Execute the following command to start the monitoring dashboard:

streamlit run app.py

Then, in your browser, navigate to the provided localhost URL.

3. Add and Monitor IPs

  • Add the IP of the machine where the Flask server is running.
  • Select the IP from the dropdown to fetch and display system information.
  • Adjust auto-refresh settings for real-time monitoring.

Requirements

All dependencies are listed in requirements.txt.

Notes

  • Ensure that both machines are connected to the same network.
  • The Flask server must be running on the remote machine before monitoring.
  • If running on a different network, port forwarding or a VPN might be required.

License

This project is open-source and available under the MIT License.