# src/utils/logger.py import os import pandas as pd from datetime import datetime def log_user_event(event_type, tweet_text, predicted_label, proba, feedback=None, comment=None): """ Enregistre un événement utilisateur dans un fichier CSV. Args: event_type (str): "feedback" ou "analysis" tweet_text (str): Texte du tweet analysé predicted_label (str): Émotion dominante prédite (ex : "joy") proba (float): Score de confiance en % feedback (str|None): Feedback utilisateur (👍 Yes / 👎 No) comment (str|None): Commentaire libre de l'utilisateur """ log_dir = "huggingface_api/logs" os.makedirs(log_dir, exist_ok=True) log_file = os.path.join( log_dir, "log_feedbacks.csv" if event_type == "feedback" else "log_analysis.csv" ) entry = { "timestamp": datetime.now().strftime("%Y-%m-%d %H:%M:%S"), "tweet": tweet_text, "predicted_emotion": predicted_label, "confidence_percent": round(float(proba), 2), "feedback": feedback, "comment": comment } df_entry = pd.DataFrame([entry]) df_entry.to_csv(log_file, mode="a", header=not os.path.exists(log_file), index=False)