📚 Improved log management system structure and organization
This commit is contained in:
@ -64749,3 +64749,110 @@ WHERE users.role = ?]
|
|||||||
2025-06-20 12:05:33 - [app] app - [DEBUG] DEBUG - Response:
|
2025-06-20 12:05:33 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
2025-06-20 12:05:52 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: database/myp.db
|
2025-06-20 12:05:52 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: database/myp.db
|
||||||
2025-06-20 12:05:52 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
|
2025-06-20 12:05:52 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
|
||||||
|
2025-06-20 12:05:58 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:05:58 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:05:58 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:05:58 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:05:59 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:05:59 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:05:59 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:05:59 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:00 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:00 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:03 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [INFO] INFO - Locating template 'jobs.html':
|
||||||
|
1: trying loader of application '__main__'
|
||||||
|
class: jinja2.loaders.FileSystemLoader
|
||||||
|
encoding: 'utf-8'
|
||||||
|
followlinks: False
|
||||||
|
searchpath:
|
||||||
|
- C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend\templates
|
||||||
|
-> found ('C:\\Users\\TTOMCZA.EMEA\\Dev\\Projektarbeit-MYP\\backend\\templates\\jobs.html')
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [INFO] INFO - Not Found (404):
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [ERROR] ERROR - Fehler beim Laden des Benutzers :
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Request:
|
||||||
|
2025-06-20 12:06:14 - [app] app - [INFO] INFO - ✅ API: Drucker abgerufen (include_inactive=)
|
||||||
|
2025-06-20 12:06:14 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
2025-06-20 12:06:20 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt...
|
||||||
|
2025-06-20 12:06:20 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt
|
||||||
|
2025-06-20 12:06:20 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler:
|
||||||
|
2025-06-20 12:06:21 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: database/myp.db
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [CONFIG] Production-Modus:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Konfiguration aktiviert
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O)
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: erstellt, aktualisiert
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP -Umgebung
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] 🏢
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped:
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank...
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert
|
||||||
|
2025-06-20 12:06:22 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin...
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt.
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker...
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105)
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager...
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler...
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet
|
||||||
|
2025-06-20 12:06:23 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Steckdosen (alle auf 'aus' = frei)...
|
||||||
|
2025-06-20 12:06:41 - [app] app - [WARNING] WARNING - [STARTUP] ⚠️ Keine der 6 Steckdosen konnte initialisiert werden
|
||||||
|
2025-06-20 12:06:41 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://:
|
||||||
|
2025-06-20 12:06:41 - [app] app - [INFO] INFO - Locating template 'dashboard.html':
|
||||||
|
1: trying loader of application '__main__'
|
||||||
|
class: jinja2.loaders.FileSystemLoader
|
||||||
|
encoding: 'utf-8'
|
||||||
|
followlinks: False
|
||||||
|
searchpath:
|
||||||
|
- C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend\templates
|
||||||
|
-> found ('C:\\Users\\TTOMCZA.EMEA\\Dev\\Projektarbeit-MYP\\backend\\templates\\dashboard.html')
|
||||||
|
2025-06-20 12:06:41 - [app] app - [INFO] INFO - Locating template 'base.html':
|
||||||
|
1: trying loader of application '__main__'
|
||||||
|
class: jinja2.loaders.FileSystemLoader
|
||||||
|
encoding: 'utf-8'
|
||||||
|
followlinks: False
|
||||||
|
searchpath:
|
||||||
|
- C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend\templates
|
||||||
|
-> found ('C:\\Users\\TTOMCZA.EMEA\\Dev\\Projektarbeit-MYP\\backend\\templates\\base.html')
|
||||||
|
2025-06-20 12:06:41 - [app] app - [INFO] INFO - Locating template 'macros/ui_components.html':
|
||||||
|
1: trying loader of application '__main__'
|
||||||
|
class: jinja2.loaders.FileSystemLoader
|
||||||
|
encoding: 'utf-8'
|
||||||
|
followlinks: False
|
||||||
|
searchpath:
|
||||||
|
- C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend\templates
|
||||||
|
-> found ('C:\\Users\\TTOMCZA.EMEA\\Dev\\Projektarbeit-MYP\\backend\\templates\\macros\\ui_components.html')
|
||||||
|
2025-06-20 12:06:41 - [app] app - [DEBUG] DEBUG - Response:
|
||||||
|
@ -140,3 +140,10 @@ AttributeError: 'ConflictManager' object has no attribute 'detect_conflicts'
|
|||||||
2025-06-20 10:28:28 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
2025-06-20 10:28:28 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
||||||
2025-06-20 10:31:22 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
2025-06-20 10:31:22 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
||||||
2025-06-20 10:39:57 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
2025-06-20 10:39:57 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 2 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00
|
||||||
|
2025-06-20 12:05:58 - [calendar] calendar - [INFO] INFO - 🔍 Konfliktprüfung abgeschlossen: 0 Konflikte, Schweregrad: 0, Automatisch lösbar: True
|
||||||
|
2025-06-20 12:05:59 - [calendar] calendar - [INFO] INFO - 🔍 Konfliktprüfung abgeschlossen: 0 Konflikte, Schweregrad: 0, Automatisch lösbar: True
|
||||||
|
2025-06-20 12:06:00 - [calendar] calendar - [INFO] INFO - 🔍 Konfliktprüfung abgeschlossen: 0 Konflikte, Schweregrad: 0, Automatisch lösbar: True
|
||||||
|
2025-06-20 12:06:03 - [calendar] calendar - [INFO] INFO - 🔍 Konfliktprüfung abgeschlossen: 0 Konflikte, Schweregrad: 0, Automatisch lösbar: True
|
||||||
|
2025-06-20 12:06:03 - [calendar] calendar - [INFO] INFO - Automatische Druckerzuweisung wird verwendet für Job 'test'
|
||||||
|
2025-06-20 12:06:03 - [calendar] calendar - [INFO] INFO - Automatische Druckerzuweisung: Drucker 1 (Score: 174, Load: 0)
|
||||||
|
2025-06-20 12:06:03 - [calendar] calendar - [INFO] INFO - Neuer Kalendereintrag erstellt: ID 3, Name: test, Drucker: Drucker 1 (automatisch zugewiesen)
|
||||||
|
@ -504,3 +504,7 @@
|
|||||||
2025-06-20 12:02:02 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
2025-06-20 12:02:02 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
||||||
2025-06-20 12:02:30 - [core_system] core_system - [INFO] INFO - ✅ Core System Management Module erfolgreich initialisiert
|
2025-06-20 12:02:30 - [core_system] core_system - [INFO] INFO - ✅ Core System Management Module erfolgreich initialisiert
|
||||||
2025-06-20 12:02:30 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
2025-06-20 12:02:30 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
||||||
|
2025-06-20 12:05:13 - [core_system] core_system - [INFO] INFO - ✅ Core System Management Module erfolgreich initialisiert
|
||||||
|
2025-06-20 12:05:13 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
||||||
|
2025-06-20 12:06:21 - [core_system] core_system - [INFO] INFO - ✅ Core System Management Module erfolgreich initialisiert
|
||||||
|
2025-06-20 12:06:21 - [core_system] core_system - [INFO] INFO - 📊 Massive Konsolidierung: 6 Dateien → 1 Datei (88% Reduktion)
|
||||||
|
@ -1043,3 +1043,7 @@
|
|||||||
2025-06-20 12:02:03 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
2025-06-20 12:02:03 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
2025-06-20 12:02:31 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert
|
2025-06-20 12:02:31 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert
|
||||||
2025-06-20 12:02:31 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
2025-06-20 12:02:31 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:05:13 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert
|
||||||
|
2025-06-20 12:05:13 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:06:21 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert
|
||||||
|
2025-06-20 12:06:21 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
@ -109,3 +109,5 @@
|
|||||||
2025-06-20 12:01:07 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
2025-06-20 12:01:07 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
||||||
2025-06-20 12:02:04 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
2025-06-20 12:02:04 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
||||||
2025-06-20 12:02:32 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
2025-06-20 12:02:32 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
||||||
|
2025-06-20 12:05:14 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
||||||
|
2025-06-20 12:06:22 - [drucker_steuerung] drucker_steuerung - [INFO] INFO - 🖨️ Drucker-Steuerungs-Blueprint (Backend-Kontrolle) geladen
|
||||||
|
@ -838,3 +838,5 @@
|
|||||||
2025-06-20 12:01:07 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
2025-06-20 12:01:07 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
||||||
2025-06-20 12:02:04 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
2025-06-20 12:02:04 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
||||||
2025-06-20 12:02:32 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
2025-06-20 12:02:32 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
||||||
|
2025-06-20 12:05:14 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
||||||
|
2025-06-20 12:06:22 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert
|
||||||
|
@ -3888,3 +3888,26 @@
|
|||||||
2025-06-20 12:04:33 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.104 ist im Netzwerk nicht erreichbar
|
2025-06-20 12:04:33 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.104 ist im Netzwerk nicht erreichbar
|
||||||
2025-06-20 12:04:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.106 ist über keine Methode erreichbar
|
2025-06-20 12:04:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.106 ist über keine Methode erreichbar
|
||||||
2025-06-20 12:04:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.106 ist im Netzwerk nicht erreichbar
|
2025-06-20 12:04:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.106 ist im Netzwerk nicht erreichbar
|
||||||
|
2025-06-20 12:05:13 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen
|
||||||
|
2025-06-20 12:05:15 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE
|
||||||
|
2025-06-20 12:05:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.100 ist über keine Methode erreichbar
|
||||||
|
2025-06-20 12:05:39 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.100 ist im Netzwerk nicht erreichbar
|
||||||
|
2025-06-20 12:05:41 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.100 nicht abrufbar: HTTPConnectionPool(host='192.168.0.100', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D75AAE40>, 'Connection to 192.168.0.100 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:05:43 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.100 nicht abrufbar: HTTPConnectionPool(host='192.168.0.100', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D7612710>, 'Connection to 192.168.0.100 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:05:46 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.100 nicht abrufbar: HTTPConnectionPool(host='192.168.0.100', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D7613250>, 'Connection to 192.168.0.100 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:05:51 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.101 ist über keine Methode erreichbar
|
||||||
|
2025-06-20 12:05:51 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.101 ist im Netzwerk nicht erreichbar
|
||||||
|
2025-06-20 12:05:53 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.101 nicht abrufbar: HTTPConnectionPool(host='192.168.0.101', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D772C8A0>, 'Connection to 192.168.0.101 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:05:55 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.101 nicht abrufbar: HTTPConnectionPool(host='192.168.0.101', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D772D220>, 'Connection to 192.168.0.101 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:05:58 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.101 nicht abrufbar: HTTPConnectionPool(host='192.168.0.101', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D7601250>, 'Connection to 192.168.0.101 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:03 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.102 ist über keine Methode erreichbar
|
||||||
|
2025-06-20 12:06:03 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.102 ist im Netzwerk nicht erreichbar
|
||||||
|
2025-06-20 12:06:05 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.102 nicht abrufbar: HTTPConnectionPool(host='192.168.0.102', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D752FF00>, 'Connection to 192.168.0.102 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:07 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.102 nicht abrufbar: HTTPConnectionPool(host='192.168.0.102', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D76E0380>, 'Connection to 192.168.0.102 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:10 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.102 nicht abrufbar: HTTPConnectionPool(host='192.168.0.102', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D76E07C0>, 'Connection to 192.168.0.102 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:15 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ 192.168.0.103 ist über keine Methode erreichbar
|
||||||
|
2025-06-20 12:06:15 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Steckdose 192.168.0.103 ist im Netzwerk nicht erreichbar
|
||||||
|
2025-06-20 12:06:17 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.103 nicht abrufbar: HTTPConnectionPool(host='192.168.0.103', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D7369AE0>, 'Connection to 192.168.0.103 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:19 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Energiedaten von 192.168.0.103 nicht abrufbar: HTTPConnectionPool(host='192.168.0.103', port=80): Max retries exceeded with url: /app (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x00000140D752EAD0>, 'Connection to 192.168.0.103 timed out. (connect timeout=2)'))
|
||||||
|
2025-06-20 12:06:21 - [hardware_integration] hardware_integration - [INFO] INFO - 🚀 Hardware Integration (Backend-Kontrolle) erfolgreich geladen
|
||||||
|
2025-06-20 12:06:23 - [hardware_integration] hardware_integration - [INFO] INFO - 🎯 DruckerSteuerung initialisiert - BACKEND ÜBERNIMMT KONTROLLE
|
||||||
|
@ -2018,3 +2018,17 @@
|
|||||||
2025-06-20 12:02:31 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion)
|
2025-06-20 12:02:31 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion)
|
||||||
2025-06-20 12:02:32 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität)
|
2025-06-20 12:02:32 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität)
|
||||||
2025-06-20 12:05:12 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität)
|
2025-06-20 12:05:12 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität)
|
||||||
|
2025-06-20 12:05:13 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert
|
||||||
|
2025-06-20 12:05:13 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion)
|
||||||
|
2025-06-20 12:05:15 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität)
|
||||||
|
2025-06-20 12:05:58 - [job_queue_system] job_queue_system - [WARNING] WARNING - Unvollständige Job-Daten für Konflikt-Erkennung
|
||||||
|
2025-06-20 12:05:59 - [job_queue_system] job_queue_system - [WARNING] WARNING - Unvollständige Job-Daten für Konflikt-Erkennung
|
||||||
|
2025-06-20 12:06:00 - [job_queue_system] job_queue_system - [WARNING] WARNING - Unvollständige Job-Daten für Konflikt-Erkennung
|
||||||
|
2025-06-20 12:06:03 - [job_queue_system] job_queue_system - [WARNING] WARNING - Unvollständige Job-Daten für Konflikt-Erkennung
|
||||||
|
2025-06-20 12:06:20 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität)
|
||||||
|
2025-06-20 12:06:21 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert
|
||||||
|
2025-06-20 12:06:21 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion)
|
||||||
|
2025-06-20 12:06:23 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität)
|
||||||
|
2025-06-20 12:06:41 - [job_queue_system] job_queue_system - [ERROR] ERROR - Fehler bei Konflikt-Erkennung: 'Job' object has no attribute 'priority'
|
||||||
|
2025-06-20 12:06:41 - [job_queue_system] job_queue_system - [ERROR] ERROR - Fehler bei Konflikt-Erkennung: 'Job' object has no attribute 'priority'
|
||||||
|
2025-06-20 12:06:41 - [job_queue_system] job_queue_system - [ERROR] ERROR - Fehler bei Konflikt-Erkennung: 'Job' object has no attribute 'priority'
|
||||||
|
@ -1103,3 +1103,11 @@ sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) FOREIGN KEY constraint f
|
|||||||
2025-06-20 12:01:02 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1)
|
2025-06-20 12:01:02 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1)
|
||||||
2025-06-20 12:01:30 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True)
|
2025-06-20 12:01:30 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True)
|
||||||
2025-06-20 12:01:30 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1)
|
2025-06-20 12:01:30 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1)
|
||||||
|
2025-06-20 12:06:14 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True)
|
||||||
|
2025-06-20 12:06:14 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 3 von 3 (Seite 1)
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [INFO] INFO - 🚀 Neue Job-Erstellung gestartet von Benutzer 1
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [INFO] INFO - 🚀 Neue Job-Erstellung gestartet von Benutzer 1
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [INFO] INFO - 🚀 Neue Job-Erstellung gestartet von Benutzer 1
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [WARNING] WARNING - ⚠️ Kritische Konflikte gefunden: ["Fehler bei Konflikt-Analyse: 'Job' object has no attribute 'priority'"]
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [WARNING] WARNING - ⚠️ Kritische Konflikte gefunden: ["Fehler bei Konflikt-Analyse: 'Job' object has no attribute 'priority'"]
|
||||||
|
2025-06-20 12:06:41 - [jobs] jobs - [WARNING] WARNING - ⚠️ Kritische Konflikte gefunden: ["Fehler bei Konflikt-Analyse: 'Job' object has no attribute 'priority'"]
|
||||||
|
@ -1031,3 +1031,7 @@
|
|||||||
2025-06-20 12:02:04 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
2025-06-20 12:02:04 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
2025-06-20 12:02:31 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert
|
2025-06-20 12:02:31 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert
|
||||||
2025-06-20 12:02:31 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
2025-06-20 12:02:31 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:05:14 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert
|
||||||
|
2025-06-20 12:05:14 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:06:22 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert
|
||||||
|
2025-06-20 12:06:22 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
@ -570,3 +570,5 @@ WHERE users.role = ?]
|
|||||||
2025-06-20 12:03:02 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
2025-06-20 12:03:02 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
||||||
2025-06-20 12:03:08 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
2025-06-20 12:03:08 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
||||||
2025-06-20 12:03:09 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
2025-06-20 12:03:09 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert
|
||||||
|
2025-06-20 12:05:14 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert
|
||||||
|
2025-06-20 12:06:22 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert
|
||||||
|
@ -4661,3 +4661,62 @@
|
|||||||
2025-06-20 12:05:02 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
2025-06-20 12:05:02 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
2025-06-20 12:05:02 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
2025-06-20 12:05:02 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
2025-06-20 12:05:02 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
2025-06-20 12:05:02 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:05:13 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte Steckdosen-Initialisierung beim Systemstart...
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [INFO] INFO - 🔍 Prüfe 6 konfigurierte Steckdosen...
|
||||||
|
2025-06-20 12:05:15 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:05:18 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 1: Steckdose 192.168.0.100 nicht erreichbar
|
||||||
|
2025-06-20 12:05:19 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:05:19 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:05:19 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:05:21 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 2: Steckdose 192.168.0.101 nicht erreichbar
|
||||||
|
2025-06-20 12:05:24 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 3: Steckdose 192.168.0.102 nicht erreichbar
|
||||||
|
2025-06-20 12:05:27 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 4: Steckdose 192.168.0.103 nicht erreichbar
|
||||||
|
2025-06-20 12:05:30 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 5: Steckdose 192.168.0.104 nicht erreichbar
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 6: Steckdose 192.168.0.106 nicht erreichbar
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - ============================================================
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - 🎯 STECKDOSEN-INITIALISIERUNG ABGESCHLOSSEN
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - 📊 Gesamt: 6 Steckdosen
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - ✅ Erfolgreich: 0
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - 📡 Nicht erreichbar: 6
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - ❌ Fehlgeschlagen: 0
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [WARNING] WARNING - ⚠️ KEINE Steckdose konnte initialisiert werden!
|
||||||
|
2025-06-20 12:05:33 - [scheduler] scheduler - [INFO] INFO - ============================================================
|
||||||
|
2025-06-20 12:05:45 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:05:45 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:05:45 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:05:49 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:05:49 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:05:49 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:06:15 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:06:15 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:06:15 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:06:19 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:06:19 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:06:19 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:06:21 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte Steckdosen-Initialisierung beim Systemstart...
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [INFO] INFO - 🔍 Prüfe 6 konfigurierte Steckdosen...
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: Till Tomczaktet
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [ERROR] ERROR - ❌ Fehler beim einschalten der Steckdose für Drucker 2: name 'tapo_controller' is not defined
|
||||||
|
2025-06-20 12:06:23 - [scheduler] scheduler - [ERROR] ERROR - ❌ Konnte Steckdose für Job 1 nicht einschalten
|
||||||
|
2025-06-20 12:06:26 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 1: Steckdose 192.168.0.100 nicht erreichbar
|
||||||
|
2025-06-20 12:06:29 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 2: Steckdose 192.168.0.101 nicht erreichbar
|
||||||
|
2025-06-20 12:06:32 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 3: Steckdose 192.168.0.102 nicht erreichbar
|
||||||
|
2025-06-20 12:06:35 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 4: Steckdose 192.168.0.103 nicht erreichbar
|
||||||
|
2025-06-20 12:06:38 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 5: Steckdose 192.168.0.104 nicht erreichbar
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [WARNING] WARNING - 📡 Drucker 6: Steckdose 192.168.0.106 nicht erreichbar
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - ============================================================
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - 🎯 STECKDOSEN-INITIALISIERUNG ABGESCHLOSSEN
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - 📊 Gesamt: 6 Steckdosen
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - ✅ Erfolgreich: 0
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - 📡 Nicht erreichbar: 6
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - ❌ Fehlgeschlagen: 0
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [WARNING] WARNING - ⚠️ KEINE Steckdose konnte initialisiert werden!
|
||||||
|
2025-06-20 12:06:41 - [scheduler] scheduler - [INFO] INFO - ============================================================
|
||||||
|
@ -1559,3 +1559,9 @@
|
|||||||
2025-06-20 12:02:31 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert
|
2025-06-20 12:02:31 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert
|
||||||
2025-06-20 12:02:31 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
2025-06-20 12:02:31 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
2025-06-20 12:02:32 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert
|
2025-06-20 12:02:32 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert
|
||||||
|
2025-06-20 12:05:13 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert
|
||||||
|
2025-06-20 12:05:13 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:05:14 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert
|
||||||
|
2025-06-20 12:06:21 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert
|
||||||
|
2025-06-20 12:06:21 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion)
|
||||||
|
2025-06-20 12:06:22 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert
|
||||||
|
@ -4124,3 +4124,21 @@
|
|||||||
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - 🪟 Windows-Modus: Aktiviert
|
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - 🪟 Windows-Modus: Aktiviert
|
||||||
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - 🔒 Windows-sichere Log-Rotation: Aktiviert
|
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - 🔒 Windows-sichere Log-Rotation: Aktiviert
|
||||||
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - ==================================================
|
2025-06-20 12:02:31 - [startup] startup - [INFO] INFO - ==================================================
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - ==================================================
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet...
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.13.3 (tags/v3.13.3:6280bb5, Apr 8 2025, 14:47:33) [MSC v.1943 64 bit (AMD64)]
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: nt (win32)
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T12:05:14.674501
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - 🪟 Windows-Modus: Aktiviert
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - 🔒 Windows-sichere Log-Rotation: Aktiviert
|
||||||
|
2025-06-20 12:05:14 - [startup] startup - [INFO] INFO - ==================================================
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - ==================================================
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet...
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.13.3 (tags/v3.13.3:6280bb5, Apr 8 2025, 14:47:33) [MSC v.1943 64 bit (AMD64)]
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: nt (win32)
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - 📁 Arbeitsverzeichnis: C:\Users\TTOMCZA.EMEA\Dev\Projektarbeit-MYP\backend
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-20T12:06:22.860668
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - 🪟 Windows-Modus: Aktiviert
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - 🔒 Windows-sichere Log-Rotation: Aktiviert
|
||||||
|
2025-06-20 12:06:22 - [startup] startup - [INFO] INFO - ==================================================
|
||||||
|
@ -507,3 +507,7 @@
|
|||||||
2025-06-20 12:02:02 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
2025-06-20 12:02:02 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
||||||
2025-06-20 12:02:30 - [windows_fixes] windows_fixes - [INFO] INFO - 🔧 Wende Windows-spezifische Fixes an...
|
2025-06-20 12:02:30 - [windows_fixes] windows_fixes - [INFO] INFO - 🔧 Wende Windows-spezifische Fixes an...
|
||||||
2025-06-20 12:02:30 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
2025-06-20 12:02:30 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
||||||
|
2025-06-20 12:05:13 - [windows_fixes] windows_fixes - [INFO] INFO - 🔧 Wende Windows-spezifische Fixes an...
|
||||||
|
2025-06-20 12:05:13 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
||||||
|
2025-06-20 12:06:21 - [windows_fixes] windows_fixes - [INFO] INFO - 🔧 Wende Windows-spezifische Fixes an...
|
||||||
|
2025-06-20 12:06:21 - [windows_fixes] windows_fixes - [INFO] INFO - ✅ Alle Windows-Fixes erfolgreich angewendet
|
||||||
|
@ -702,6 +702,7 @@ class Job(Base):
|
|||||||
if cached_result is not None:
|
if cached_result is not None:
|
||||||
return cached_result
|
return cached_result
|
||||||
|
|
||||||
|
# Grundlegende Job-Informationen
|
||||||
result = {
|
result = {
|
||||||
"id": self.id,
|
"id": self.id,
|
||||||
"name": self.name,
|
"name": self.name,
|
||||||
@ -722,10 +723,100 @@ class Job(Base):
|
|||||||
"printer": self.printer.to_dict() if self.printer else None
|
"printer": self.printer.to_dict() if self.printer else None
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Frontend-kompatible Felder hinzufügen
|
||||||
|
result.update({
|
||||||
|
# Alternative Namen für Frontend-Kompatibilität
|
||||||
|
"title": self.name, # Alias für name
|
||||||
|
"filename": self.name, # Fallback für filename
|
||||||
|
"file_name": self.name, # Weitere Alias für file_name
|
||||||
|
|
||||||
|
# Drucker-Informationen direkt verfügbar machen
|
||||||
|
"printer_name": self.printer.name if self.printer else "Unbekannter Drucker",
|
||||||
|
"printer_model": self.printer.model if self.printer else None,
|
||||||
|
"printer_location": self.printer.location if self.printer else None,
|
||||||
|
"printer_status": self.printer.status if self.printer else "unknown",
|
||||||
|
|
||||||
|
# Benutzer-Informationen direkt verfügbar machen
|
||||||
|
"user_name": self.user.name if self.user else "Unbekannter Benutzer",
|
||||||
|
"username": self.user.username if self.user else None,
|
||||||
|
"user_email": self.user.email if self.user else None,
|
||||||
|
|
||||||
|
# Zeitstempel in verschiedenen Formaten
|
||||||
|
"start_time": self.start_at.strftime('%d.%m.%Y %H:%M') if self.start_at else "Nicht festgelegt",
|
||||||
|
"end_time": self.end_at.strftime('%d.%m.%Y %H:%M') if self.end_at else "Nicht festgelegt",
|
||||||
|
"created_time": self.created_at.strftime('%d.%m.%Y %H:%M') if self.created_at else "Unbekannt",
|
||||||
|
|
||||||
|
# Status-Text in Deutsch
|
||||||
|
"status_text": self._get_status_text(self.status),
|
||||||
|
|
||||||
|
# Fortschritt berechnen (falls Job läuft)
|
||||||
|
"progress": self._calculate_progress(),
|
||||||
|
|
||||||
|
# Ist der Job aktiv?
|
||||||
|
"is_active": self.status in ['scheduled', 'running', 'printing'],
|
||||||
|
|
||||||
|
# Verbleibende Zeit berechnen
|
||||||
|
"remaining_minutes": self._calculate_remaining_minutes()
|
||||||
|
})
|
||||||
|
|
||||||
# Ergebnis cachen (3 Minuten für Jobs)
|
# Ergebnis cachen (3 Minuten für Jobs)
|
||||||
set_cache(cache_key, result, 180)
|
set_cache(cache_key, result, 180)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
def _get_status_text(self, status: str) -> str:
|
||||||
|
"""Wandelt englische Status-Codes in deutsche Texte um"""
|
||||||
|
status_mapping = {
|
||||||
|
'scheduled': 'Geplant',
|
||||||
|
'pending': 'Wartend',
|
||||||
|
'ready': 'Bereit',
|
||||||
|
'running': 'Läuft',
|
||||||
|
'printing': 'Druckt',
|
||||||
|
'paused': 'Pausiert',
|
||||||
|
'completed': 'Abgeschlossen',
|
||||||
|
'finished': 'Beendet',
|
||||||
|
'failed': 'Fehlgeschlagen',
|
||||||
|
'cancelled': 'Abgebrochen',
|
||||||
|
'aborted': 'Abgebrochen',
|
||||||
|
'waiting_for_printer': 'Wartet auf Drucker'
|
||||||
|
}
|
||||||
|
return status_mapping.get(status, status.title() if status else 'Unbekannt')
|
||||||
|
|
||||||
|
def _calculate_progress(self) -> int:
|
||||||
|
"""Berechnet den Fortschritt des Jobs in Prozent"""
|
||||||
|
if not self.start_at or not self.end_at:
|
||||||
|
return 0
|
||||||
|
|
||||||
|
now = datetime.now()
|
||||||
|
|
||||||
|
if self.status == 'completed' or self.status == 'finished':
|
||||||
|
return 100
|
||||||
|
elif self.status in ['failed', 'cancelled', 'aborted']:
|
||||||
|
return 0
|
||||||
|
elif self.status in ['scheduled', 'pending']:
|
||||||
|
return 0
|
||||||
|
elif self.status in ['running', 'printing']:
|
||||||
|
# Fortschritt basierend auf verstrichener Zeit
|
||||||
|
total_duration = (self.end_at - self.start_at).total_seconds()
|
||||||
|
elapsed_time = (now - self.start_at).total_seconds()
|
||||||
|
|
||||||
|
if total_duration > 0:
|
||||||
|
progress = int((elapsed_time / total_duration) * 100)
|
||||||
|
return min(max(progress, 0), 100) # Zwischen 0 und 100 begrenzen
|
||||||
|
|
||||||
|
return 0
|
||||||
|
|
||||||
|
def _calculate_remaining_minutes(self) -> int:
|
||||||
|
"""Berechnet die verbleibenden Minuten für den Job"""
|
||||||
|
if not self.end_at or self.status not in ['running', 'printing']:
|
||||||
|
return 0
|
||||||
|
|
||||||
|
now = datetime.now()
|
||||||
|
if now >= self.end_at:
|
||||||
|
return 0
|
||||||
|
|
||||||
|
remaining_seconds = (self.end_at - now).total_seconds()
|
||||||
|
return max(int(remaining_seconds / 60), 0)
|
||||||
|
|
||||||
def update_status(self, new_status: str):
|
def update_status(self, new_status: str):
|
||||||
"""
|
"""
|
||||||
Aktualisiert den Job-Status und invalidiert den Cache.
|
Aktualisiert den Job-Status und invalidiert den Cache.
|
||||||
|
Reference in New Issue
Block a user