diff --git a/backend/blueprints/__pycache__/user_management.cpython-311.pyc b/backend/blueprints/__pycache__/user_management.cpython-311.pyc index cb6f47458..2cf5b2d5c 100644 Binary files a/backend/blueprints/__pycache__/user_management.cpython-311.pyc and b/backend/blueprints/__pycache__/user_management.cpython-311.pyc differ diff --git a/backend/blueprints/user_management.py b/backend/blueprints/user_management.py index cc077c6cb..6331dff02 100644 --- a/backend/blueprints/user_management.py +++ b/backend/blueprints/user_management.py @@ -192,7 +192,7 @@ def user_settings_api(): "settings": settings }) - elif request.method == 'POST': + elif request.method in ['POST', 'PATCH']: # Einstellungen aktualisieren data = request.get_json() diff --git a/backend/database/myp.db-shm b/backend/database/myp.db-shm new file mode 100644 index 000000000..3fe8af023 Binary files /dev/null and b/backend/database/myp.db-shm differ diff --git a/backend/database/myp.db-wal b/backend/database/myp.db-wal new file mode 100644 index 000000000..02b38a988 Binary files /dev/null and b/backend/database/myp.db-wal differ diff --git a/backend/instance/sessions/01b9c840c7812ed25e7f576fbab8c2dd_activity.pkl b/backend/instance/sessions/01b9c840c7812ed25e7f576fbab8c2dd_activity.pkl new file mode 100644 index 000000000..08cf063b2 Binary files /dev/null and b/backend/instance/sessions/01b9c840c7812ed25e7f576fbab8c2dd_activity.pkl differ diff --git a/backend/instance/sessions/032e22aa7e486f49f8c32b6e247f5608_activity.pkl b/backend/instance/sessions/032e22aa7e486f49f8c32b6e247f5608_activity.pkl new file mode 100644 index 000000000..a86a1459b Binary files /dev/null and b/backend/instance/sessions/032e22aa7e486f49f8c32b6e247f5608_activity.pkl differ diff --git a/backend/instance/sessions/0b50d91b8d6302aff354e8df7c34fadf_activity.pkl b/backend/instance/sessions/0b50d91b8d6302aff354e8df7c34fadf_activity.pkl new file mode 100644 index 000000000..8f0a8a718 Binary files /dev/null and b/backend/instance/sessions/0b50d91b8d6302aff354e8df7c34fadf_activity.pkl differ diff --git a/backend/instance/sessions/1195e16eb6c9f0cd94ed6ab851e97a38_activity.pkl b/backend/instance/sessions/1195e16eb6c9f0cd94ed6ab851e97a38_activity.pkl new file mode 100644 index 000000000..8b88c763d Binary files /dev/null and b/backend/instance/sessions/1195e16eb6c9f0cd94ed6ab851e97a38_activity.pkl differ diff --git a/backend/instance/sessions/1f65bf1de29bc2cbbd8603baba46aa2d_activity.pkl b/backend/instance/sessions/1f65bf1de29bc2cbbd8603baba46aa2d_activity.pkl new file mode 100644 index 000000000..9aea8f022 Binary files /dev/null and b/backend/instance/sessions/1f65bf1de29bc2cbbd8603baba46aa2d_activity.pkl differ diff --git a/backend/instance/sessions/23ce1906df9afa4b80c9448343904e8a_activity.pkl b/backend/instance/sessions/23ce1906df9afa4b80c9448343904e8a_activity.pkl new file mode 100644 index 000000000..341e15930 Binary files /dev/null and b/backend/instance/sessions/23ce1906df9afa4b80c9448343904e8a_activity.pkl differ diff --git a/backend/instance/sessions/46eeb3210f54ac0a39a0a97cf96ea2b7_activity.pkl b/backend/instance/sessions/46eeb3210f54ac0a39a0a97cf96ea2b7_activity.pkl new file mode 100644 index 000000000..c5665decd Binary files /dev/null and b/backend/instance/sessions/46eeb3210f54ac0a39a0a97cf96ea2b7_activity.pkl differ diff --git a/backend/instance/sessions/5e5de53c03b895a85c7cd8686087bdbe_activity.pkl b/backend/instance/sessions/5e5de53c03b895a85c7cd8686087bdbe_activity.pkl new file mode 100644 index 000000000..51022c3dc Binary files /dev/null and b/backend/instance/sessions/5e5de53c03b895a85c7cd8686087bdbe_activity.pkl differ diff --git a/backend/instance/sessions/5e89c86d4fd64f4fc8bc7d9111b51e73_activity.pkl b/backend/instance/sessions/5e89c86d4fd64f4fc8bc7d9111b51e73_activity.pkl new file mode 100644 index 000000000..f1a35c548 Binary files /dev/null and b/backend/instance/sessions/5e89c86d4fd64f4fc8bc7d9111b51e73_activity.pkl differ diff --git a/backend/instance/sessions/82d65d8b580211c14a06ae98782bdd26_activity.pkl b/backend/instance/sessions/82d65d8b580211c14a06ae98782bdd26_activity.pkl new file mode 100644 index 000000000..a7996fb1d Binary files /dev/null and b/backend/instance/sessions/82d65d8b580211c14a06ae98782bdd26_activity.pkl differ diff --git a/backend/instance/sessions/92e68803014ea528be2f72a19b44da77_activity.pkl b/backend/instance/sessions/92e68803014ea528be2f72a19b44da77_activity.pkl new file mode 100644 index 000000000..2d94ca944 Binary files /dev/null and b/backend/instance/sessions/92e68803014ea528be2f72a19b44da77_activity.pkl differ diff --git a/backend/instance/sessions/aa4e96cbe498238cf36c60a9c968c895_activity.pkl b/backend/instance/sessions/aa4e96cbe498238cf36c60a9c968c895_activity.pkl new file mode 100644 index 000000000..95ab19cdd Binary files /dev/null and b/backend/instance/sessions/aa4e96cbe498238cf36c60a9c968c895_activity.pkl differ diff --git a/backend/instance/sessions/c559bfd3b3653d52c66e14cc0014d201_activity.pkl b/backend/instance/sessions/c559bfd3b3653d52c66e14cc0014d201_activity.pkl new file mode 100644 index 000000000..2349d30bc Binary files /dev/null and b/backend/instance/sessions/c559bfd3b3653d52c66e14cc0014d201_activity.pkl differ diff --git a/backend/instance/sessions/ef65642e8891f4f938008dd966ee3a47_activity.pkl b/backend/instance/sessions/ef65642e8891f4f938008dd966ee3a47_activity.pkl new file mode 100644 index 000000000..e9fa2f903 Binary files /dev/null and b/backend/instance/sessions/ef65642e8891f4f938008dd966ee3a47_activity.pkl differ diff --git a/backend/logs/admin/admin.log b/backend/logs/admin/admin.log index 5a2d309fa..58a1d6b87 100644 --- a/backend/logs/admin/admin.log +++ b/backend/logs/admin/admin.log @@ -230,3 +230,8 @@ 2025-06-15 23:56:58 - [admin] admin - [ERROR] ERROR - Fehler beim Laden des Admin-Dashboards: 'dict object' has no attribute 'online_printers' 2025-06-15 23:57:06 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_system_health_alias: User authenticated: True, User ID: 1, Is Admin: True 2025-06-15 23:57:06 - [admin] admin - [INFO] INFO - Admin-Check für Funktion api_admin_system_health: User authenticated: True, User ID: 1, Is Admin: True +2025-06-16 00:33:54 - [admin] admin - [INFO] INFO - Admin-Check für Funktion delete_printer_api: User authenticated: True, User ID: 1, Is Admin: True +2025-06-16 00:33:54 - [admin] admin - [ERROR] ERROR - Fehler beim Löschen des Druckers 7: (sqlite3.IntegrityError) FOREIGN KEY constraint failed +[SQL: DELETE FROM printers WHERE printers.id = ?] +[parameters: (7,)] +(Background on this error at: https://sqlalche.me/e/20/gkpj) diff --git a/backend/logs/app/app.log b/backend/logs/app/app.log index fd0ad7ba7..e0ef357ff 100644 --- a/backend/logs/app/app.log +++ b/backend/logs/app/app.log @@ -33750,3 +33750,124 @@ NameError: name 'send_from_directory' is not defined 2025-06-16 00:24:03 - [app] app - [DEBUG] DEBUG - Response: 200 2025-06-16 00:24:03 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) 2025-06-16 00:24:03 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:33:41 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:33:43 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:33:43 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:33:43 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:33:43 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:33:44 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:33:44 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:33:44 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:33:44 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:33:46 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:33:46 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:33:46 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:33:46 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:33:47 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:33:47 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:33:47 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:33:48 - [app] app - [INFO] INFO - Locating template 'printers.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/printers.html') +2025-06-16 00:33:48 - [app] app - [INFO] INFO - Locating template 'base.html': + 1: trying loader of application '__main__' + class: jinja2.loaders.FileSystemLoader + encoding: 'utf-8' + followlinks: False + searchpath: + - /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates + -> found ('/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html') +2025-06-16 00:33:48 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:33:49 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:33:49 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:33:49 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:33:51 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 00:33:51 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 00:33:54 - [app] app - [DEBUG] DEBUG - Request: DELETE /api/admin/printers/7 +2025-06-16 00:33:54 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 00:34:01 - [app] app - [DEBUG] DEBUG - Request: GET /printers +2025-06-16 00:34:01 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:01 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:34:01 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:34:01 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:02 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:34:02 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:34:02 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:02 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:34:02 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:03 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 00:34:03 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 00:34:31 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:34:31 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:34:31 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:32 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:34:32 - [app] app - [INFO] INFO - ✅ API: 7 Drucker abgerufen (include_inactive=False) +2025-06-16 00:34:32 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:34:32 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:34:32 - [app] app - [DEBUG] DEBUG - Response: 200 diff --git a/backend/logs/data_management/data_management.log b/backend/logs/data_management/data_management.log index 25b3a1540..9dbd4410a 100644 --- a/backend/logs/data_management/data_management.log +++ b/backend/logs/data_management/data_management.log @@ -459,3 +459,7 @@ 2025-06-16 00:22:55 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:22:57 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert 2025-06-16 00:22:57 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:42 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:33:42 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:45 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:33:45 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) diff --git a/backend/logs/energy_monitoring/energy_monitoring.log b/backend/logs/energy_monitoring/energy_monitoring.log index b88f21d62..3b7e23756 100644 --- a/backend/logs/energy_monitoring/energy_monitoring.log +++ b/backend/logs/energy_monitoring/energy_monitoring.log @@ -244,3 +244,5 @@ 2025-06-16 00:21:35 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert 2025-06-16 00:22:56 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert 2025-06-16 00:22:58 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 00:33:43 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 00:33:46 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert diff --git a/backend/logs/hardware_integration/hardware_integration.log b/backend/logs/hardware_integration/hardware_integration.log index 4c3066901..290b4318a 100644 --- a/backend/logs/hardware_integration/hardware_integration.log +++ b/backend/logs/hardware_integration/hardware_integration.log @@ -1437,3 +1437,11 @@ 2025-06-16 00:22:57 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert 2025-06-16 00:22:57 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert 2025-06-16 00:22:57 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 00:33:41 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:33:41 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:33:41 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:33:41 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 00:33:45 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:33:45 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:33:45 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:33:45 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) diff --git a/backend/logs/job_queue_system/job_queue_system.log b/backend/logs/job_queue_system/job_queue_system.log index a596b640d..80b38b964 100644 --- a/backend/logs/job_queue_system/job_queue_system.log +++ b/backend/logs/job_queue_system/job_queue_system.log @@ -901,3 +901,9 @@ 2025-06-16 00:22:58 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) 2025-06-16 00:24:19 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) 2025-06-16 00:24:19 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 00:33:42 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:33:42 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:33:44 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 00:33:45 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:33:45 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:33:47 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) diff --git a/backend/logs/monitoring_analytics/monitoring_analytics.log b/backend/logs/monitoring_analytics/monitoring_analytics.log index 646860ef8..8bb3f477b 100644 --- a/backend/logs/monitoring_analytics/monitoring_analytics.log +++ b/backend/logs/monitoring_analytics/monitoring_analytics.log @@ -459,3 +459,7 @@ 2025-06-16 00:22:56 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:22:58 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert 2025-06-16 00:22:58 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:43 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:33:43 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:46 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:33:46 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) diff --git a/backend/logs/permissions/permissions.log b/backend/logs/permissions/permissions.log index d6efd12b5..3e17fcb25 100644 --- a/backend/logs/permissions/permissions.log +++ b/backend/logs/permissions/permissions.log @@ -168,3 +168,5 @@ WHERE users.role = ?] 2025-06-16 00:21:35 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-16 00:22:56 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-16 00:22:58 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:33:43 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:33:46 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert diff --git a/backend/logs/scheduler/scheduler.log b/backend/logs/scheduler/scheduler.log index b3a689c27..ba6daf929 100644 --- a/backend/logs/scheduler/scheduler.log +++ b/backend/logs/scheduler/scheduler.log @@ -1044,3 +1044,20 @@ 2025-06-16 00:23:59 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com 2025-06-16 00:24:06 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) 2025-06-16 00:24:07 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) +2025-06-16 00:33:41 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:33:44 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:33:44 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:33:44 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:33:45 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:33:47 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:33:47 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:33:47 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:33:52 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) +2025-06-16 00:33:56 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) +2025-06-16 00:34:14 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:34:18 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:34:23 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) +2025-06-16 00:34:26 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) +2025-06-16 00:34:45 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:34:48 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:34:53 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler bei Überprüfung der Jobs: Instance is not bound to a Session; attribute refresh operation cannot proceed (Background on this error at: https://sqlalche.me/e/20/bhk3) diff --git a/backend/logs/security_suite/security_suite.log b/backend/logs/security_suite/security_suite.log index 790790121..a080004c6 100644 --- a/backend/logs/security_suite/security_suite.log +++ b/backend/logs/security_suite/security_suite.log @@ -689,3 +689,9 @@ 2025-06-16 00:22:57 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert 2025-06-16 00:22:57 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:22:58 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:33:42 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:33:42 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:43 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:33:45 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:33:45 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:33:46 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert diff --git a/backend/logs/startup/startup.log b/backend/logs/startup/startup.log index 82e675908..74fea2efa 100644 --- a/backend/logs/startup/startup.log +++ b/backend/logs/startup/startup.log @@ -1818,3 +1818,17 @@ 2025-06-16 00:22:58 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend 2025-06-16 00:22:58 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:22:58.272339 2025-06-16 00:22:58 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:33:43.300286 +2025-06-16 00:33:43 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: /cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:33:46.587071 +2025-06-16 00:33:46 - [startup] startup - [INFO] INFO - ================================================== diff --git a/backend/logs/tapo_controller/tapo_controller.log b/backend/logs/tapo_controller/tapo_controller.log index a6c5f656c..7f27ebb65 100644 --- a/backend/logs/tapo_controller/tapo_controller.log +++ b/backend/logs/tapo_controller/tapo_controller.log @@ -1095,3 +1095,27 @@ 2025-06-16 00:24:06 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 2025-06-16 00:24:07 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) 2025-06-16 00:24:07 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:33:41 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:33:45 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:33:46 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:49 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:49 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:52 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:52 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:33:52 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:56 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:33:56 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:34:16 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:20 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:20 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:23 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:23 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:34:23 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:26 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:26 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:34:47 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:50 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:50 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 1/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:53 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 3/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 00:34:53 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:34:53 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Versuch 2/3 fehlgeschlagen beim einschalten von 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) diff --git a/backend/logs/tapo_status_manager/tapo_status_manager.log b/backend/logs/tapo_status_manager/tapo_status_manager.log index 28ca69bff..6c00d2387 100644 --- a/backend/logs/tapo_status_manager/tapo_status_manager.log +++ b/backend/logs/tapo_status_manager/tapo_status_manager.log @@ -196,3 +196,5 @@ 2025-06-16 00:21:35 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert 2025-06-16 00:22:55 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert 2025-06-16 00:22:57 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:33:41 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:33:45 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert diff --git a/backend/logs/utilities_collection/utilities_collection.log b/backend/logs/utilities_collection/utilities_collection.log index 9d02fd202..08eb1ab1b 100644 --- a/backend/logs/utilities_collection/utilities_collection.log +++ b/backend/logs/utilities_collection/utilities_collection.log @@ -621,3 +621,7 @@ 2025-06-16 00:22:55 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) 2025-06-16 00:22:57 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert 2025-06-16 00:22:57 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:33:41 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:33:41 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:33:44 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:33:44 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion)