49 lines
1.6 KiB
Python
49 lines
1.6 KiB
Python
|
|
import asyncio
|
||
|
|
import os
|
||
|
|
import sys
|
||
|
|
from dotenv import load_dotenv
|
||
|
|
from bot import bot
|
||
|
|
from src.logger import kuby_logger, log_performance
|
||
|
|
|
||
|
|
kuby_logger.info("🚀 Lancement du bot Kuby...")
|
||
|
|
kuby_logger.debug("Starting __main__.py execution")
|
||
|
|
|
||
|
|
# Load environment variables
|
||
|
|
kuby_logger.info("📋 Chargement des variables d'environnement...")
|
||
|
|
load_dotenv()
|
||
|
|
kuby_logger.debug("Environment variables loaded")
|
||
|
|
|
||
|
|
# Get Discord token
|
||
|
|
TOKEN = os.getenv("DISCORD_TOKEN")
|
||
|
|
kuby_logger.debug(f"Token retrieved from environment: {'***' if TOKEN else 'None'}")
|
||
|
|
|
||
|
|
if not TOKEN:
|
||
|
|
kuby_logger.critical("❌ Erreur: Token Discord non trouvé dans les variables d'environnement!")
|
||
|
|
kuby_logger.critical("Assurez-vous d'avoir un fichier .env avec DISCORD_TOKEN=votre_token")
|
||
|
|
sys.exit(1)
|
||
|
|
|
||
|
|
kuby_logger.info("✅ Token Discord chargé avec succès")
|
||
|
|
|
||
|
|
@log_performance
|
||
|
|
async def main():
|
||
|
|
kuby_logger.info("🔄 Démarrage de la connexion Discord...")
|
||
|
|
try:
|
||
|
|
kuby_logger.debug("Starting async context manager")
|
||
|
|
async with bot:
|
||
|
|
kuby_logger.info("🔗 Connexion établie avec Discord...")
|
||
|
|
await bot.start(TOKEN)
|
||
|
|
except KeyboardInterrupt:
|
||
|
|
kuby_logger.info("🛑 Bot shutdown requested by user")
|
||
|
|
except Exception as e:
|
||
|
|
kuby_logger.critical(f"❌ Erreur fatale lors du démarrage : {e}", exc_info=True)
|
||
|
|
raise
|
||
|
|
|
||
|
|
if __name__ == "__main__":
|
||
|
|
kuby_logger.info("🚀 Lancement du bot Kuby...")
|
||
|
|
try:
|
||
|
|
asyncio.run(main())
|
||
|
|
except KeyboardInterrupt:
|
||
|
|
kuby_logger.info("🛑 Bot shutdown complete")
|
||
|
|
except Exception as e:
|
||
|
|
kuby_logger.critical(f"❌ Erreur fatale: {e}", exc_info=True)
|
||
|
|
sys.exit(1)
|