diff --git a/CLAUDE.md b/CLAUDE.md index 0d8c1a8..a9039c7 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -196,6 +196,7 @@ Deutsch (default) + Englisch. API: `?locale=de|en`. DB: `_locales` Tabellen. | API | https://pl.porwoll.tech/api | | Swagger UI | https://pl.porwoll.tech/api/docs | | Production | https://cms.c2sgmbh.de | +| Monitoring Dashboard | https://pl.porwoll.tech/admin/monitoring | → Vollständige Endpoint-Liste: `docs/anleitungen/API_ANLEITUNG.md` @@ -222,8 +223,9 @@ Deutsch (default) + Englisch. API: `?locale=de|en`. DB: `_locales` Tabellen. | Community Management | `src/lib/integrations/meta/`, `src/lib/jobs/` | `docs/CLAUDE_REFERENCE.md` | | YouTube Operations Hub | `src/lib/youtube/`, API: `/api/youtube/*` | `docs/CLAUDE_REFERENCE.md` | | FormSubmissions CRM | `src/collections/FormSubmissionsOverrides.ts` | `docs/CLAUDE_REFERENCE.md` | +| Monitoring & Alerting | `src/lib/monitoring/`, API: `/api/monitoring/*` | `docs/CLAUDE_REFERENCE.md` | -## Collections (55+) +## Collections (59+) | Slug | Beschreibung | Gruppe | |------|--------------|--------| @@ -286,6 +288,10 @@ Deutsch (default) + Englisch. API: `?locale=de|en`. DB: `_locales` Tabellen. | site-settings | Website-Einstellungen (pro Tenant) | System | | navigations | Navigationsmenüs (pro Tenant) | System | | redirects | URL-Weiterleitungen (Plugin) | System | +| monitoring-snapshots | Historische System-Metriken | Monitoring | +| monitoring-logs | Structured Business-Logs | Monitoring | +| monitoring-alert-rules | Konfigurierbare Alert-Regeln | Monitoring | +| monitoring-alert-history | Alert-Log (WORM) | Monitoring | ## Blocks (43) diff --git a/docs/PROJECT_STATUS.md b/docs/PROJECT_STATUS.md index 23b7598..89850ff 100644 --- a/docs/PROJECT_STATUS.md +++ b/docs/PROJECT_STATUS.md @@ -1,6 +1,6 @@ # Projekt Status - Februar 2026 -**Stand:** 14. Februar 2026 +**Stand:** 15. Februar 2026 ## Zusammenfassung @@ -87,6 +87,31 @@ Die komplette Entwicklungsinfrastruktur ist eingerichtet und funktionsfähig: - Konfigurierbare Report-Settings - Cron-basierter Versand +### Monitoring & Alerting Dashboard + +- [x] **System-Überwachung:** + - CPU, RAM, Disk-Auslastung (Node.js os-Modul) + - PM2 Prozess-Status (Payload + Queue-Worker) + - Load Average, Uptime +- [x] **Service-Status:** + - PostgreSQL, PgBouncer, Redis, SMTP, OAuth-Tokens, BullMQ Queues, Cron-Jobs +- [x] **Performance-Tracking:** + - Response-Zeiten (Avg, P95, P99), Error-Rate, Requests/Minute + - In-Memory Ring-Buffer (10.000 Einträge) +- [x] **Alerting:** + - Konfigurierbare Regeln (MonitoringAlertRules Collection) + - Multi-Channel: Email, Slack, Discord + - Cooldown-basierte Deduplizierung +- [x] **Structured Logging:** + - MonitoringLogs Collection mit Level/Source-Filter + - Fire-and-forget Logger mit Payload-Fallback +- [x] **Dashboard UI:** + - 5-Tab-Dashboard unter /admin/monitoring + - SSE-basierte Echtzeit-Updates + - Trend-Charts, Gauge-Widgets, Service-Karten +- [x] **Data Retention:** + - Snapshots: 7 Tage, Logs: 30 Tage, Alert-History: 90 Tage + ### sv-frontend (Multi-Project) - [x] Node.js 22.x + pnpm @@ -122,6 +147,7 @@ Organisation: **complexcaresolutions** (Internal) |-----------|---------|--------| | ✅ | Meta (Facebook/Instagram) Kommentar-Sync | Erledigt | | ✅ | YouTube Thumbnail-Download für Offline-Anzeige | Erledigt | +| ✅ | Monitoring & Alerting Dashboard | Erledigt | --- @@ -144,7 +170,7 @@ Organisation: **complexcaresolutions** (Internal) 7. [ ] Alle 9 Frontends entwickeln 8. [ ] Migration von Plesk-Domains zu neuer Infra 9. [ ] AI-gestützte Kommentar-Moderation -10. [ ] Monitoring & Alerting Dashboard +10. [x] ~~Monitoring & Alerting Dashboard~~ --- @@ -205,6 +231,16 @@ pm2 logs payload ## 📝 Änderungsprotokoll +### 15.02.2026 +- **Monitoring & Alerting Dashboard implementiert:** + - 4 neue Collections: MonitoringSnapshots, MonitoringLogs, MonitoringAlertRules, MonitoringAlertHistory + - Backend-Services: MonitoringService, PerformanceTracker, MonitoringLogger, AlertEvaluator, SnapshotCollector + - 8 REST-Endpoints unter /api/monitoring/* + SSE-Stream + - 5-Tab Admin Dashboard (System Health, Services, Performance, Alerts, Logs) + - Data Retention Policies (7d/30d/90d) + - 31 Tests für Monitoring-Module (Types, Service, Tracker, Logger, Evaluator) + - Feature-Branch: feature/monitoring-dashboard + ### 14.02.2026 - **YouTube Thumbnail-Download implementiert:** - `downloadAndUploadImage()` Utility für Bild-Download → Payload Media