import os from datetime import datetime from modules.debug_mailer import envoyer_alerte_debug # Le fichier de destination pour les logs locaux LOG_FILE = "aethas_logs.txt" def log_event(niveau, source, message): """ Enregistre un événement dans le fichier de log local. Déclenche l'envoi d'un e-mail si le niveau est ERROR ou CRITICAL. """ timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S") log_line = f"[{timestamp}] [{niveau}] [{source}] {message}\n" # 1. Écriture sécurisée dans le fichier de log local try: with open(LOG_FILE, "a", encoding="utf-8") as f: f.write(log_line) except Exception as e: print(f"ÉCHEC D'ÉCRITURE LOG : Impossible d'écrire dans {LOG_FILE} : {e}") # 2. Déclenchement de l'alerte e-mail pour la phase de Debug # Les niveaux peuvent être ajustés (ex: ajouter "WARNING" si vous souhaitez plus d'alertes) if niveau in ["ERROR", "CRITICAL"]: try: # Appel du second module pour gérer l'envoi envoyer_alerte_debug(niveau, source, message) except Exception as mail_error: # On print l'erreur dans la console hôte pour ne pas faire planter l'application print(f"ÉCHEC D'ENVOI E-MAIL : Impossible d'avertir l'administrateur : {mail_error}")