Some checks failed
SourceFinder CI/CD Pipeline / Code Quality & Linting (push) Has been cancelled
SourceFinder CI/CD Pipeline / Unit Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Security Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Integration Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Performance Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Code Coverage Report (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (16.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (18.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Build & Deployment Validation (20.x) (push) Has been cancelled
SourceFinder CI/CD Pipeline / Regression Tests (push) Has been cancelled
SourceFinder CI/CD Pipeline / Security Audit (push) Has been cancelled
SourceFinder CI/CD Pipeline / Notify Results (push) Has been cancelled
- Architecture modulaire avec injection de dépendances - Système de scoring intelligent multi-facteurs (spécificité, fraîcheur, qualité, réutilisation) - Moteur anti-injection 4 couches (preprocessing, patterns, sémantique, pénalités) - API REST complète avec validation et rate limiting - Repository JSON avec index mémoire et backup automatique - Provider LLM modulaire pour génération de contenu - Suite de tests complète (Jest) : * Tests unitaires pour sécurité et scoring * Tests d'intégration API end-to-end * Tests de sécurité avec simulation d'attaques * Tests de performance et charge - Pipeline CI/CD avec GitHub Actions - Logging structuré et monitoring - Configuration ESLint et environnement de test 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
161 lines
5.0 KiB
Markdown
161 lines
5.0 KiB
Markdown
# 📦 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 !** 🎉 |