Rév.9
This commit is contained in:
14
Monitor.py
14
Monitor.py
@@ -1,7 +1,6 @@
|
|||||||
# Surveillance continue avec envoi d'alertes par email + log CSV
|
# Surveillance continue avec envoi d'alertes par email + log CSV
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
import time
|
|
||||||
import smtplib
|
import smtplib
|
||||||
from email.mime.text import MIMEText
|
from email.mime.text import MIMEText
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
@@ -65,9 +64,9 @@ def surveiller():
|
|||||||
WHERE Sonde = %s
|
WHERE Sonde = %s
|
||||||
ORDER BY Date DESC LIMIT 6
|
ORDER BY Date DESC LIMIT 6
|
||||||
""", (nom_sonde,))
|
""", (nom_sonde,))
|
||||||
relevés = cursor.fetchall()
|
releves = cursor.fetchall()
|
||||||
|
|
||||||
for r in relevés:
|
for r in releves:
|
||||||
log_entries.append({
|
log_entries.append({
|
||||||
"Date": r['Date'],
|
"Date": r['Date'],
|
||||||
"Lieu": lieu,
|
"Lieu": lieu,
|
||||||
@@ -77,9 +76,9 @@ def surveiller():
|
|||||||
"État": "Dépassement" if r['Temperature'] > seuil else "Normal"
|
"État": "Dépassement" if r['Temperature'] > seuil else "Normal"
|
||||||
})
|
})
|
||||||
|
|
||||||
if len(relevés) == 6:
|
if len(releves) == 6:
|
||||||
toutes_hors_seuil = all(r['Temperature'] > seuil for r in relevés)
|
toutes_hors_seuil = all(r['Temperature'] > seuil for r in releves)
|
||||||
plus_ancien = relevés[-1]['Date']
|
plus_ancien = releves[-1]['Date']
|
||||||
maintenant = datetime.now()
|
maintenant = datetime.now()
|
||||||
|
|
||||||
if toutes_hors_seuil and (maintenant - plus_ancien >= timedelta(minutes=30)):
|
if toutes_hors_seuil and (maintenant - plus_ancien >= timedelta(minutes=30)):
|
||||||
@@ -122,7 +121,8 @@ def surveiller():
|
|||||||
# Enregistrer le log
|
# Enregistrer le log
|
||||||
if log_entries:
|
if log_entries:
|
||||||
df_logs = pd.DataFrame(log_entries)
|
df_logs = pd.DataFrame(log_entries)
|
||||||
df_logs.to_csv("/home/debian/travail/Logs/monitor.csv", sep=";", index=False)
|
df_logs.to_csv("/home/debian/travail/Gestion_sondes/logs/monitor.csv", sep=";", index=False)
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
print()
|
||||||
print(f"Erreur : {e}", flush=True)
|
print(f"Erreur : {e}", flush=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user