CS4447 Context of the Code Project
- Oisin O Sullivan - 22368493
This project is a system performance and temperature monitoring application that consists of 5 main components:
- A flask based web server for receiving, and storing metrics
- a metrics collection agent for gathering system performance data
- a UDP listener for esp32 temperature data
- an uploader queue which sends metriucs to the server in specific time intervals
- A Dash interactive dashboard for visualizing metrics
- PC Performance tracking
- ESP32 temperature monitoring
- Interactive dashboard
- Python 3
- pip package installer
- to recieve metrics from esp32, you will need to clone this repository: https://github.com/oisinosullivan9/embedded_assignment.git
-
clone the repository:
git clone https://github.com/oisinosullivan9/Metrics.git
-
install dependencies
pip install -r requirements.txt
-
run the flask server:
python main.py
-
run the pc collector:
python pc_metrics.py
-
run the esp32 collector:
python esp32_metrics.py
note: you will need to have embedded sytem setup and running for this
-
run the uploader queue:
python uploader_queue.py
I used Render to deploy this project, so you will have to modify config.yaml to deploy it locally