Files
Gestion_sondes/rapport_supervisor.py
2025-04-09 06:48:01 +02:00

48 lines
1.1 KiB
Python

import subprocess
import smtplib
from email.mime.text import MIMEText
from datetime import datetime
# Informations mail
FROM = "alertes_saclay@domo91.fr"
TO = ["services@domo91.fr"]
SUBJECT = f"🟢 Rapport quotidien - Supervisor OK ({datetime.now().strftime('%d/%m/%Y')})"
# Liste des services attendus
processus_attendus = [
"Chauffage",
"Cuisine_Saclay",
"Monitor",
"Streamlit",
"Telegram_sondes",
"cuisine_meudon"
]
# Vérifie les statuts
output = subprocess.getoutput("supervisorctl status")
etat = "\n".join(line for line in output.splitlines() if any(p in line for p in processus_attendus))
# Contenu du mail
message = f"""Bonjour,
Voici l'état des processus supervisés ce jour ({datetime.now().strftime('%Y-%m-%d %H:%M')}).
{etat}
Cordialement,
Domo91
"""
msg = MIMEText(message)
msg["Subject"] = SUBJECT
msg["From"] = FROM
msg["To"] = ", ".join(TO)
try:
with smtplib.SMTP_SSL("smtp.mail.ovh.net", 465) as server:
server.login(FROM, "Kdpke674y23Feq^H")
server.sendmail(FROM, TO, msg.as_string())
print("✅ Rapport envoyé avec succès.")
except Exception as e:
print(f"Erreur envoi mail : {e}")