Files
Gestion_sondes/scripts/logger_config.py
2025-07-26 08:37:13 +02:00

36 lines
1.2 KiB
Python

import os
import logging
def setup_logger(log_filename: str, dossier_logs: str = "/var/log/Cuisine_Saclay") -> None:
"""
Configure le logger pour écrire à la fois dans un fichier et sur la console.
:param log_filename: Nom du fichier de log (exemple : 'Cuisine_Saclay.log')
:param dossier_logs: Dossier où enregistrer les logs (par défaut : /var/log/Cuisine_Saclay)
"""
# 📁 Créer le dossier s'il n'existe pas
os.makedirs(dossier_logs, exist_ok=True)
# 📄 Chemin complet du fichier de log
logfile = os.path.join(dossier_logs, log_filename)
# 📝 Configuration de base du logger (fichier)
logging.basicConfig(
filename=logfile,
level=logging.INFO,
format="%(asctime)s - %(levelname)s - %(message)s",
filemode="a" # ajouter au fichier existant
)
# 🔔 Ajout de la sortie console
console = logging.StreamHandler()
console.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
console.setFormatter(formatter)
# 👇 Ajouter le handler console au logger racine
logging.getLogger('').addHandler(console)
logging.info(f"Logger initialisé. Fichier de log : {logfile}")