Simple way to monitor a Windows/Linux system with a web interface.
This software has been tested in Python 3.8+.
First, clone this repository:
git clone https://github.com/eplq/simple-system-monitoring
Go to simple-system-monitoring folder:
cd simple-system-monitoring
Install dependencies:
pip3 install -r requirements.txt # linux
py -m pip install -r requirements.txt # windows
And run the software:
python3 main.py # linux
py main.py # windows
Once it is running, you can access to the web interface from your browser. By default, it listens in all interfaces on port 80 (can be changed in const.py
).
It gets stats about CPU, RAM, disks and network every second (can be configured in const.py
file, < 0.5s not recommended).
All stats are provided by the psutil library.
Those stats are broadcasted with Socket.io, which allows to make your custom client only connecting to the Socket.io server.
The events are cpu
, ram
, disk
and net
.
There is a built-in web interface to show how it works. Check the templates
and static
folders.
It uses the following technologies:
- Python 3.8+
- Flask
- Socket.io
- psutil
- Bootstrap 5
- JavaScript
For the HTML style no custom CSS was used, only Bootstrap.
This project is licensed under the MIT License.