# 📦 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_ID` et authentification Google - Imports `googleapis` - Variables `sheets` et `auth` - Appels Google Sheets dans `logSh()` et `cleanLogSheet()` ### ✅ 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 ```bash # 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 ```bash # 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 ```javascript 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 ```bash 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 1. **Rotation des logs** : Utiliser `logrotate` ou équivalent 2. **Monitoring** : Interface web pour surveillance temps réel 3. **Alerting** : Parser les logs ERROR pour notifications 4. **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 !** 🎉