Major Changes: - Moved legacy system to Legacy/ folder for archival - Built new modular architecture with strict separation of concerns - Created core system: Module, EventBus, ModuleLoader, Router - Added Application bootstrap with auto-start functionality - Implemented development server with ES6 modules support - Created comprehensive documentation and project context - Converted SBS-7-8 content to JSON format - Copied all legacy games and content to new structure New Architecture Features: - Sealed modules with WeakMap private data - Strict dependency injection system - Event-driven communication only - Inviolable responsibility patterns - Auto-initialization without commands - Component-based UI foundation ready Technical Stack: - Vanilla JS/HTML/CSS only - ES6 modules with proper imports/exports - HTTP development server (no file:// protocol) - Modular CSS with component scoping - Comprehensive error handling and debugging Ready for Phase 2: Converting legacy modules to new architecture 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
5.0 KiB
📦 Export Système de Logging SEO Generator
🎯 Contenu de l'export
Ce dossier contient le système de logging complet extrait du SEO Generator, sans les dépendances Google Sheets.
📁 Fichiers inclus
export_logger/
├── ErrorReporting.js # 🏠 Système de logging centralisé (nettoyé)
├── trace.js # 🌲 Système de traçage hiérarchique
├── trace-wrap.js # 🔧 Utilitaires de wrapping
├── logviewer.cjs # 📊 Outil CLI de consultation logs
├── logs-viewer.html # 🌐 Interface web temps réel
├── log-server.cjs # 🚀 Serveur WebSocket pour logs
├── package.json # 📦 Configuration npm
├── demo.js # 🎬 Démonstration complète
├── README.md # 📚 Documentation complète
└── EXPORT_INFO.md # 📋 Ce fichier
🧹 Modifications apportées
❌ Supprimé de ErrorReporting.js:
- Toutes les fonctions Google Sheets (
logToGoogleSheets,cleanGoogleSheetsLogs, etc.) - Configuration
SHEET_IDet authentification Google - Imports
googleapis - Variables
sheetsetauth - Appels Google Sheets dans
logSh()etcleanLogSheet()
✅ Conservé:
- Système de logging Pino (console + fichier + WebSocket)
- Traçage hiérarchique complet
- Interface web temps réel
- Outils CLI de consultation
- Formatage coloré et timestamps
- Gestion des niveaux (TRACE, DEBUG, INFO, WARN, ERROR)
🚀 Intégration dans votre projet
Installation manuelle
# 1. Copier les fichiers
cp ErrorReporting.js yourproject/lib/
cp trace.js yourproject/lib/
cp trace-wrap.js yourproject/lib/
cp logviewer.cjs yourproject/tools/
cp logs-viewer.html yourproject/tools/
cp log-server.cjs yourproject/tools/
# 2. Installer dépendances
npm install ws pino pino-pretty
# 3. Ajouter scripts package.json
npm pkg set scripts.logs="node tools/logviewer.cjs"
npm pkg set scripts.logs:pretty="node tools/logviewer.cjs --pretty"
npm pkg set scripts.logs:server="node tools/log-server.cjs"
🧪 Test rapide
# Lancer la démonstration
node demo.js
# Consulter les logs générés
npm run logs:pretty
# Interface web temps réel
npm run logs:server
# Puis ouvrir logs-viewer.html
💻 Utilisation dans votre code
const { logSh, setupTracer } = require('./lib/ErrorReporting');
// Logging simple
logSh('Mon application démarrée', 'INFO');
logSh('Erreur détectée', 'ERROR');
// Traçage hiérarchique
const tracer = setupTracer('MonModule');
await tracer.run('maFonction', async () => {
logSh('▶ Début opération', 'TRACE');
// ... votre code
logSh('✔ Opération terminée', 'TRACE');
}, { param1: 'value1' });
🎨 Fonctionnalités principales
📊 Multi-output
- Console : Formatage coloré en temps réel
- Fichier : JSON structuré dans
logs/seo-generator-YYYY-MM-DD_HH-MM-SS.log - WebSocket : Diffusion temps réel pour interface web
🌲 Traçage hiérarchique
- Suivi d'exécution avec AsyncLocalStorage
- Paramètres de fonction capturés
- Durées de performance
- Symboles visuels (▶ ✔ ✖)
🔍 Consultation des logs
- CLI :
npm run logs:pretty - Web : Interface temps réel avec filtrage
- Recherche : Par niveau, mot-clé, date, module
🎯 Niveaux intelligents
- TRACE : Flux d'exécution détaillé
- DEBUG : Information de débogage
- INFO : Événements importants
- WARN : Situations inhabituelles
- ERROR : Erreurs avec stack traces
🔧 Configuration
Variables d'environnement
LOG_LEVEL=DEBUG # Niveau minimum (défaut: INFO)
WEBSOCKET_PORT=8081 # Port WebSocket (défaut: 8081)
ENABLE_CONSOLE_LOG=true # Console output (défaut: false)
Personnalisation avancée
Modifier directement ErrorReporting.js pour:
- Changer les couleurs console
- Ajouter des champs de log personnalisés
- Modifier le format des fichiers
- Personnaliser les niveaux de log
📈 Intégration production
- Rotation des logs : Utiliser
logrotateou équivalent - Monitoring : Interface web pour surveillance temps réel
- Alerting : Parser les logs ERROR pour notifications
- Performance : Logs TRACE désactivables en production
🎯 Avantages de cet export
✅ Standalone - Aucune dépendance Google Sheets ✅ Portable - Fonctionne dans n'importe quel projet Node.js ✅ Complet - Toutes les fonctionnalités logging préservées ✅ Documenté - Guide complet d'installation et d'usage ✅ Démonstration - Exemples concrets inclus ✅ Production-ready - Optimisé pour usage professionnel
📞 Support
Ce système de logging est extrait du SEO Generator et fonctionne de manière autonome. Toutes les fonctionnalités de logging, traçage et visualisation sont opérationnelles.
Documentation complète : Voir README.md
Démonstration : Lancer node demo.js
Test rapide : Lancer node install.js puis npm run logs:pretty
🎉 Votre système de logging professionnel est prêt ! 🎉