Mise à jour 22/4/25
This commit is contained in:
13
Monitor.py
13
Monitor.py
@@ -5,10 +5,9 @@ import time
|
||||
import smtplib
|
||||
from email.mime.text import MIMEText
|
||||
import pandas as pd
|
||||
from dotenv import load_dotenv
|
||||
import os
|
||||
from dotenv import load_dotenv
|
||||
|
||||
# Charger les variables d'environnement
|
||||
load_dotenv()
|
||||
|
||||
# --- Config MySQL ---
|
||||
@@ -19,8 +18,9 @@ config = {
|
||||
"database": os.getenv("DB_NAME")
|
||||
}
|
||||
|
||||
# --- Destinataires email ---
|
||||
destinataires = os.getenv("EMAIL_DEST").split(",")
|
||||
# --- Fonction de sélection des destinataires selon le site ---
|
||||
def get_destinataires(lieu):
|
||||
return os.getenv(f"EMAIL_{lieu.upper()}", os.getenv("EMAIL_DEFAULT")).split(",")
|
||||
|
||||
# --- Fonction d'envoi de mail ---
|
||||
def envoyer_mail(sujet, message, destinataires):
|
||||
@@ -36,7 +36,6 @@ def envoyer_mail(sujet, message, destinataires):
|
||||
except Exception as e:
|
||||
print(f"Erreur envoi mail : {e}", flush=True)
|
||||
|
||||
|
||||
# --- Fonction de surveillance ---
|
||||
def surveiller():
|
||||
log_entries = []
|
||||
@@ -98,7 +97,7 @@ def surveiller():
|
||||
f"La sonde '{nom_sonde}' du site '{lieu}' a dépassé le seuil de {seuil}°C "
|
||||
f"depuis plus de 30 minutes.\nHeure : {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}"
|
||||
)
|
||||
envoyer_mail(sujet, message, destinataires)
|
||||
envoyer_mail(sujet, message, get_destinataires(lieu))
|
||||
|
||||
# Acquittement automatique
|
||||
cursor.execute(f"""
|
||||
@@ -128,6 +127,6 @@ def surveiller():
|
||||
|
||||
# --- Boucle principale ---
|
||||
while True:
|
||||
print(f"📡 Vérification à {datetime.now()}", flush=True)
|
||||
print(f"🛁 Vérification à {datetime.now()}", flush=True)
|
||||
surveiller()
|
||||
time.sleep(300) # 5 minutes
|
||||
|
||||
Reference in New Issue
Block a user