maj auto 2

This commit is contained in:
xavier committed 2026-08-18 16:04:58 +02:00
1 parent 7ea3c603bb
commit f966ce7bde
3 files changed
+122 -53

No files matched your search

+24 -8
View File
@@ -1,15 +1,31 @@
# modules/logger.py
import datetime
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, fournisseur, message):
"""Enregistre un événement ou une erreur dans le fichier de log."""
timestamp = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
log_entry = f"[{timestamp}] [{niveau.upper()}] [{fournisseur.upper()}] {message}\n"
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_entry)
f.write(log_line)
except Exception as e:
print(f"Erreur d'écriture des logs : {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}")