added stuff + monitoring (to logfile)
This commit is contained in:
19
Case study 1/monitoring/collect.py
Normal file
19
Case study 1/monitoring/collect.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from flask import Flask, request, jsonify
|
||||
from datetime import datetime
|
||||
import json
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
@app.route('/collect', methods=['POST'])
|
||||
def collect():
|
||||
data = request.get_json()
|
||||
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
||||
with open("collected_data.log", "a") as f:
|
||||
f.write(f"{timestamp} - {json.dumps(data)}\n")
|
||||
|
||||
print(f"[{timestamp}] Data received from {data.get('hostname', 'unknown')}")
|
||||
return jsonify({"status": "success"}), 200
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(host='0.0.0.0', port=5000)
|
||||
1
Case study 1/monitoring/collected_data.log
Normal file
1
Case study 1/monitoring/collected_data.log
Normal file
@@ -0,0 +1 @@
|
||||
2025-10-28 14:55:03 - {"hostname": "hp-arch", "os": "Linux", "cpu_percent": 1.9, "memory_percent": 30.8, "disk_usage": 85.2, "time": "2025-10-28T14:55:03.021372"}
|
||||
0
Case study 1/monitoring/prereq.txt
Normal file
0
Case study 1/monitoring/prereq.txt
Normal file
32
Case study 1/monitoring/send_metrics.py
Normal file
32
Case study 1/monitoring/send_metrics.py
Normal file
@@ -0,0 +1,32 @@
|
||||
import psutil
|
||||
import platform
|
||||
import requests
|
||||
import socket
|
||||
from datetime import datetime
|
||||
|
||||
SERVER_URL = "http://localhost:5000/collect" # change this!
|
||||
|
||||
def collect_metrics():
|
||||
data = {
|
||||
"hostname": socket.gethostname(),
|
||||
"os": platform.system(),
|
||||
"cpu_percent": psutil.cpu_percent(interval=1),
|
||||
"memory_percent": psutil.virtual_memory().percent,
|
||||
"disk_usage": psutil.disk_usage('/').percent,
|
||||
"time": datetime.now().isoformat()
|
||||
}
|
||||
return data
|
||||
|
||||
def send_data(data):
|
||||
try:
|
||||
response = requests.post(SERVER_URL, json=data, timeout=5)
|
||||
if response.status_code == 200:
|
||||
print("Data sent successfully")
|
||||
else:
|
||||
print("Server returned:", response.status_code)
|
||||
except Exception as e:
|
||||
print("Error sending data:", e)
|
||||
|
||||
if __name__ == "__main__":
|
||||
metrics = collect_metrics()
|
||||
send_data(metrics)
|
||||
Reference in New Issue
Block a user