#!/usr/bin/env python """ Dit script controleert of de logs directory bestaat en toegankelijk is, en test of logging correct werkt. """ import os import sys import logging import traceback def check_logs_directory(): # Verkrijg het absolute pad naar de logs directory base_dir = os.path.abspath(os.path.dirname(os.path.dirname(__file__))) logs_dir = os.path.join(base_dir, 'logs') print(f"\nControleren van logs directory: {logs_dir}") # Controleer of de directory bestaat if not os.path.exists(logs_dir): print(" - Directory bestaat niet. Proberen aan te maken...") try: os.makedirs(logs_dir, exist_ok=True) print(" - Directory succesvol aangemaakt.") except Exception as e: print(f" - FOUT: Kan directory niet aanmaken: {e}") return False else: print(" - Directory bestaat.") # Controleer schrijfrechten if not os.access(logs_dir, os.W_OK): print(" - FOUT: Geen schrijfrechten voor de logs directory.") return False else: print(" - Directory is schrijfbaar.") # Probeer een testbestand te schrijven test_file = os.path.join(logs_dir, 'test_write.log') try: with open(test_file, 'w') as f: f.write('Test schrijven naar logs directory.\n') print(f" - Succesvol testbestand geschreven naar {test_file}") os.remove(test_file) # Verwijder het testbestand print(" - Testbestand verwijderd.") except Exception as e: print(f" - FOUT: Kan niet schrijven naar logs directory: {e}") return False return True def check_logging_config(): print("\nControleren van logging configuratie...") try: from config.logging_config import configure_logging configure_logging() print(" - Logging configuratie geladen.") # Test enkele loggers loggers_to_test = ['eveai_app', 'eveai_workers', 'eveai_api', 'tuning'] for logger_name in loggers_to_test: logger = logging.getLogger(logger_name) logger.info(f"Test log bericht van {logger_name}") print(f" - Logger '{logger_name}' getest.") print(" - Alle loggers succesvol getest.") return True except Exception as e: print(f" - FOUT bij laden van logging configuratie: {e}") traceback.print_exc() return False def main(): print("\nEveAI Logging Test Utility") print("===========================\n") directory_ok = check_logs_directory() if not directory_ok: print("\nPROBLEEM: De logs directory is niet toegankelijk of schrijfbaar.") print("Oplossingen:") print(" 1. Zorg ervoor dat de gebruiker die de applicatie uitvoert schrijfrechten heeft voor de logs directory.") print(" 2. Voer het commando uit: mkdir -p logs && chmod 777 logs") config_ok = check_logging_config() if not config_ok: print("\nPROBLEEM: De logging configuratie kon niet worden geladen.") print("Controleer de config/logging_config.py file.") if directory_ok and config_ok: print("\nALLES OK: Logging lijkt correct geconfigureerd.") print("Controleer de logbestanden in de 'logs' directory voor de testberichten.") else: print("\nEr zijn problemen gevonden die opgelost moeten worden.") return 1 return 0 if __name__ == "__main__": sys.exit(main())