import json import os from datetime import datetime BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) AUDIT_LOG_FILE = os.path.join(BASE_DIR, "backend", "logs", "audit_trail.json") def log_audit_event(action: str, details: str, metadata: dict = None, severity: str = "INFO"): """Log an event to the system console for cloud observability.""" try: entry = { "timestamp": datetime.utcnow().isoformat(), "action": action, "details": details, "severity": severity, "metadata": metadata or {"system_context": "automated_event"} } # In stateless environment, we log to stdout for cloud logging systems (like HF logs) print(f">>> [AUDIT] {json.dumps(entry, ensure_ascii=False)}") except Exception as e: print(f"Error logging audit event: {e}") except Exception as e: print(f"Error logging audit event: {e}")