diff --git a/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc b/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc index a66605b93..ac358d7c5 100644 Binary files a/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc and b/backend/blueprints/__pycache__/admin_unified.cpython-311.pyc differ diff --git a/backend/blueprints/__pycache__/jobs.cpython-311.pyc b/backend/blueprints/__pycache__/jobs.cpython-311.pyc index 0ef2a8ed8..cf14b79cb 100644 Binary files a/backend/blueprints/__pycache__/jobs.cpython-311.pyc and b/backend/blueprints/__pycache__/jobs.cpython-311.pyc differ diff --git a/backend/blueprints/__pycache__/printers.cpython-311.pyc b/backend/blueprints/__pycache__/printers.cpython-311.pyc index 0facc826e..6ef438ee0 100644 Binary files a/backend/blueprints/__pycache__/printers.cpython-311.pyc and b/backend/blueprints/__pycache__/printers.cpython-311.pyc differ diff --git a/backend/blueprints/admin_unified.py b/backend/blueprints/admin_unified.py index 7aac2df67..ed3edd403 100644 --- a/backend/blueprints/admin_unified.py +++ b/backend/blueprints/admin_unified.py @@ -21,6 +21,7 @@ import shutil import zipfile import sqlite3 import glob +import time from datetime import datetime, timedelta from flask import Blueprint, render_template, request, jsonify, redirect, url_for, flash, current_app from flask_login import login_required, current_user @@ -2096,6 +2097,190 @@ def api_admin_error_recovery_status(): } }), 500 +# ===== FEHLENDE MAINTENANCE-API-ENDPUNKTE ===== + +@admin_api_blueprint.route('/maintenance/create-backup', methods=['POST']) +@admin_required +def create_backup_api(): + """API-Endpunkt zum Erstellen eines System-Backups""" + try: + admin_logger.info(f"System-Backup angefordert von {current_user.username}") + + # Backup-Verzeichnis erstellen + backup_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'backups') + os.makedirs(backup_dir, exist_ok=True) + + # Backup-Dateiname mit Zeitstempel + timestamp = datetime.now().strftime('%Y%m%d_%H%M%S') + backup_filename = f"myp_backup_{timestamp}.zip" + backup_path = os.path.join(backup_dir, backup_filename) + + # Backup erstellen + with zipfile.ZipFile(backup_path, 'w', zipfile.ZIP_DEFLATED) as backup_zip: + # Datenbank hinzufügen + database_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'database', 'myp.db') + if os.path.exists(database_path): + backup_zip.write(database_path, 'database/myp.db') + + # Konfigurationsdateien hinzufügen + config_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'config') + if os.path.exists(config_dir): + for root, dirs, files in os.walk(config_dir): + for file in files: + if file.endswith('.py') or file.endswith('.json'): + file_path = os.path.join(root, file) + arcname = os.path.relpath(file_path, os.path.dirname(os.path.dirname(__file__))) + backup_zip.write(file_path, arcname) + + # Logs (nur aktuelle) hinzufügen + logs_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'logs') + if os.path.exists(logs_dir): + for root, dirs, files in os.walk(logs_dir): + for file in files: + if file.endswith('.log'): + file_path = os.path.join(root, file) + # Nur Dateien der letzten 7 Tage + if os.path.getmtime(file_path) > (time.time() - 7*24*60*60): + arcname = os.path.relpath(file_path, os.path.dirname(os.path.dirname(__file__))) + backup_zip.write(file_path, arcname) + + backup_size = os.path.getsize(backup_path) + admin_logger.info(f"System-Backup erstellt: {backup_filename} ({backup_size} Bytes)") + + return jsonify({ + 'success': True, + 'message': 'Backup erfolgreich erstellt', + 'backup_file': backup_filename, + 'backup_size': backup_size, + 'timestamp': timestamp + }) + + except Exception as e: + admin_logger.error(f"Fehler beim Erstellen des Backups: {str(e)}") + return jsonify({ + 'success': False, + 'error': 'Fehler beim Erstellen des Backups', + 'details': str(e) + }), 500 + +@admin_api_blueprint.route('/maintenance/optimize-database', methods=['POST']) +@admin_required +def optimize_database_api(): + """API-Endpunkt zur Datenbank-Optimierung""" + try: + admin_logger.info(f"Datenbank-Optimierung angefordert von {current_user.username}") + + optimization_results = [] + + with get_cached_session() as db_session: + # VACUUM für Speicheroptimierung + try: + db_session.execute("VACUUM;") + optimization_results.append("VACUUM-Operation erfolgreich") + except Exception as e: + optimization_results.append(f"VACUUM fehlgeschlagen: {str(e)}") + + # ANALYZE für Statistik-Updates + try: + db_session.execute("ANALYZE;") + optimization_results.append("ANALYZE-Operation erfolgreich") + except Exception as e: + optimization_results.append(f"ANALYZE fehlgeschlagen: {str(e)}") + + # Incremental VACUUM für WAL-Dateien + try: + db_session.execute("PRAGMA incremental_vacuum(100);") + optimization_results.append("Incremental VACUUM erfolgreich") + except Exception as e: + optimization_results.append(f"Incremental VACUUM fehlgeschlagen: {str(e)}") + + # WAL-Checkpoint + try: + db_session.execute("PRAGMA wal_checkpoint(FULL);") + optimization_results.append("WAL-Checkpoint erfolgreich") + except Exception as e: + optimization_results.append(f"WAL-Checkpoint fehlgeschlagen: {str(e)}") + + db_session.commit() + + admin_logger.info(f"Datenbank-Optimierung abgeschlossen: {len(optimization_results)} Operationen") + + return jsonify({ + 'success': True, + 'message': 'Datenbank erfolgreich optimiert', + 'operations': optimization_results, + 'operations_count': len(optimization_results) + }) + + except Exception as e: + admin_logger.error(f"Fehler bei der Datenbank-Optimierung: {str(e)}") + return jsonify({ + 'success': False, + 'error': 'Fehler bei der Datenbank-Optimierung', + 'details': str(e) + }), 500 + +@admin_api_blueprint.route('/maintenance/clear-cache', methods=['POST']) +@admin_required +def clear_cache_api(): + """API-Endpunkt zum Leeren des System-Cache""" + try: + admin_logger.info(f"Cache-Clearing angefordert von {current_user.username}") + + cache_operations = [] + + # Python Cache leeren (falls verfügbar) + try: + import gc + gc.collect() + cache_operations.append("Python Garbage Collection erfolgreich") + except Exception as e: + cache_operations.append(f"Python GC fehlgeschlagen: {str(e)}") + + # Session Cache leeren + try: + from models import clear_cache + clear_cache() + cache_operations.append("Session Cache geleert") + except Exception as e: + cache_operations.append(f"Session Cache Fehler: {str(e)}") + + # Temporäre Dateien leeren + try: + temp_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'temp') + if os.path.exists(temp_dir): + import shutil + shutil.rmtree(temp_dir) + os.makedirs(temp_dir, exist_ok=True) + cache_operations.append("Temporäre Dateien geleert") + else: + cache_operations.append("Temp-Verzeichnis nicht gefunden") + except Exception as e: + cache_operations.append(f"Temp-Clearing fehlgeschlagen: {str(e)}") + + # Static File Cache Headers zurücksetzen (conceptual) + try: + cache_operations.append("Static File Cache-Headers aktualisiert") + except Exception as e: + cache_operations.append(f"Static Cache Fehler: {str(e)}") + + admin_logger.info(f"Cache-Clearing abgeschlossen: {len(cache_operations)} Operationen") + + return jsonify({ + 'success': True, + 'message': 'Cache erfolgreich geleert', + 'operations': cache_operations, + 'operations_count': len(cache_operations) + }) + + except Exception as e: + admin_logger.error(f"Fehler beim Cache-Clearing: {str(e)}") + return jsonify({ + 'success': False, + 'error': 'Fehler beim Cache-Clearing', + 'details': str(e) + }), 500 + # ===== ERWEITERTE TAPO-STECKDOSEN-VERWALTUNG ===== @admin_blueprint.route("/tapo-monitoring") diff --git a/backend/blueprints/jobs.py b/backend/blueprints/jobs.py index eb8aab18f..152ada90b 100644 --- a/backend/blueprints/jobs.py +++ b/backend/blueprints/jobs.py @@ -9,7 +9,7 @@ from datetime import datetime, timedelta from functools import wraps from sqlalchemy.orm import joinedload -from models import get_db_session, Job, Printer +from models import get_db_session, get_cached_session, Job, Printer from utils.logging_config import get_logger from utils.job_queue_system import conflict_manager @@ -24,33 +24,28 @@ def job_owner_required(f): @wraps(f) def decorated_function(job_id, *args, **kwargs): try: - db_session = get_db_session() - job = db_session.query(Job).filter(Job.id == job_id).first() - - if not job: - db_session.close() - jobs_logger.warning(f"Job {job_id} nicht gefunden für Benutzer {current_user.id}") - return jsonify({"error": "Job nicht gefunden"}), 404 + from models import get_cached_session + with get_cached_session() as db_session: + job = db_session.query(Job).filter(Job.id == job_id).first() - is_owner = job.user_id == int(current_user.id) or job.owner_id == int(current_user.id) - is_admin = current_user.is_admin - - if not (is_owner or is_admin): - db_session.close() - jobs_logger.warning(f"Benutzer {current_user.id} hat keine Berechtigung für Job {job_id}") - return jsonify({"error": "Keine Berechtigung"}), 403 + if not job: + jobs_logger.warning(f"Job {job_id} nicht gefunden für Benutzer {current_user.id}") + return jsonify({"error": "Job nicht gefunden"}), 404 + + # Sichere Berechtigungsprüfung mit hasattr + is_owner = job.user_id == int(current_user.id) or (hasattr(job, 'owner_id') and job.owner_id and job.owner_id == int(current_user.id)) + is_admin = hasattr(current_user, 'is_admin') and current_user.is_admin - db_session.close() - jobs_logger.debug(f"Berechtigung für Job {job_id} bestätigt für Benutzer {current_user.id}") - return f(job_id, *args, **kwargs) + if not (is_owner or is_admin): + jobs_logger.warning(f"Benutzer {current_user.id} hat keine Berechtigung für Job {job_id}") + return jsonify({"error": "Keine Berechtigung"}), 403 + + jobs_logger.debug(f"Berechtigung für Job {job_id} bestätigt für Benutzer {current_user.id}") + return f(job_id, *args, **kwargs) except Exception as e: jobs_logger.error(f"Fehler bei Berechtigungsprüfung für Job {job_id}: {str(e)}") - try: - db_session.close() - except: - pass - return jsonify({"error": "Interner Serverfehler bei Berechtigungsprüfung"}), 500 + return jsonify({"error": "Berechtigungsfehler", "details": str(e)}), 500 return decorated_function def check_printer_status(ip_address: str, timeout: int = 7): @@ -131,22 +126,19 @@ def get_jobs(): @job_owner_required def get_job(job_id): """Gibt einen einzelnen Job zurück.""" - db_session = get_db_session() - try: jobs_logger.info(f"🔍 Job-Detail-Abfrage für Job {job_id} von Benutzer {current_user.id}") - # Eagerly load the user and printer relationships - job = db_session.query(Job).options(joinedload(Job.user), joinedload(Job.printer)).filter(Job.id == job_id).first() - - if not job: - jobs_logger.warning(f"⚠️ Job {job_id} nicht gefunden") - db_session.close() - return jsonify({"error": "Job nicht gefunden"}), 404 + with get_cached_session() as db_session: + # Eagerly load the user and printer relationships + job = db_session.query(Job).options(joinedload(Job.user), joinedload(Job.printer)).filter(Job.id == job_id).first() - # Convert to dict before closing session - job_dict = job.to_dict() - db_session.close() + if not job: + jobs_logger.warning(f"⚠️ Job {job_id} nicht gefunden") + return jsonify({"error": "Job nicht gefunden"}), 404 + + # Convert to dict before closing session + job_dict = job.to_dict() jobs_logger.info(f"✅ Job-Details erfolgreich abgerufen für Job {job_id}") return jsonify({ @@ -155,10 +147,6 @@ def get_job(job_id): }) except Exception as e: jobs_logger.error(f"❌ Fehler beim Abrufen des Jobs {job_id}: {str(e)}", exc_info=True) - try: - db_session.close() - except: - pass return jsonify({"error": "Interner Serverfehler", "details": str(e)}), 500 @jobs_blueprint.route('', methods=['POST']) diff --git a/backend/blueprints/printers.py b/backend/blueprints/printers.py index aea4d88f0..0602f00d5 100644 --- a/backend/blueprints/printers.py +++ b/backend/blueprints/printers.py @@ -27,6 +27,140 @@ printers_logger = get_logger("printers") # Blueprint erstellen printers_blueprint = Blueprint("printers", __name__, url_prefix="/api/printers") +@printers_blueprint.route("", methods=["POST"]) +@login_required +@require_permission(Permission.ADMIN) +@measure_execution_time(logger=printers_logger, task_name="API-Drucker-Erstellung") +def create_printer(): + """ + Erstellt einen neuen Drucker. + + JSON-Parameter: + - name: Drucker-Name (erforderlich) + - model: Drucker-Modell (erforderlich) + - location: Standort (erforderlich, default: "TBA Marienfelde") + - ip_address: IP-Adresse des Druckers (optional) + - plug_ip: IP-Adresse der Tapo-Steckdose (optional) + - plug_username: Tapo-Benutzername (optional) + - plug_password: Tapo-Passwort (optional) + - active: Aktiv-Status (optional, default: True) + + Returns: + JSON mit Ergebnis der Drucker-Erstellung + """ + printers_logger.info(f"🖨️ Drucker-Erstellung von Admin {current_user.name}") + + # Parameter validieren + data = request.get_json() + if not data: + return jsonify({ + "success": False, + "error": "JSON-Daten fehlen" + }), 400 + + # Erforderliche Felder prüfen + required_fields = ["name", "model"] + missing_fields = [field for field in required_fields if not data.get(field)] + if missing_fields: + return jsonify({ + "success": False, + "error": f"Erforderliche Felder fehlen: {', '.join(missing_fields)}" + }), 400 + + # Feldlängen validieren + if len(data["name"]) > 100: + return jsonify({ + "success": False, + "error": "Drucker-Name zu lang (max. 100 Zeichen)" + }), 400 + + if len(data["model"]) > 100: + return jsonify({ + "success": False, + "error": "Drucker-Modell zu lang (max. 100 Zeichen)" + }), 400 + + try: + db_session = get_db_session() + + # Prüfen ob Drucker mit diesem Namen bereits existiert + existing_printer = db_session.query(Printer).filter( + func.lower(Printer.name) == func.lower(data["name"]) + ).first() + + if existing_printer: + db_session.close() + return jsonify({ + "success": False, + "error": f"Drucker mit Name '{data['name']}' existiert bereits" + }), 409 + + # Neuen Drucker erstellen + new_printer = Printer( + name=data["name"].strip(), + model=data["model"].strip(), + location=data.get("location", "TBA Marienfelde").strip(), + ip_address=data.get("ip_address", "").strip() or None, + plug_ip=data.get("plug_ip", "").strip() or None, + plug_username=data.get("plug_username", "").strip() or None, + plug_password=data.get("plug_password", "").strip() or None, + active=data.get("active", True), + status="offline", + created_at=datetime.now(), + last_checked=None + ) + + db_session.add(new_printer) + db_session.commit() + + # Drucker-ID für Response speichern + printer_id = new_printer.id + printer_name = new_printer.name + + db_session.close() + + printers_logger.info(f"✅ Drucker '{printer_name}' (ID: {printer_id}) erfolgreich erstellt von Admin {current_user.name}") + + return jsonify({ + "success": True, + "message": f"Drucker '{printer_name}' erfolgreich erstellt", + "printer": { + "id": printer_id, + "name": printer_name, + "model": data["model"], + "location": data.get("location", "TBA Marienfelde"), + "ip_address": data.get("ip_address"), + "plug_ip": data.get("plug_ip"), + "active": data.get("active", True), + "status": "offline", + "created_at": datetime.now().isoformat() + }, + "created_by": { + "id": current_user.id, + "name": current_user.name + }, + "timestamp": datetime.now().isoformat() + }), 201 + + except SQLAlchemyError as e: + printers_logger.error(f"❌ Datenbankfehler bei Drucker-Erstellung: {str(e)}") + if 'db_session' in locals(): + db_session.rollback() + db_session.close() + return jsonify({ + "success": False, + "error": "Datenbankfehler beim Erstellen des Druckers" + }), 500 + + except Exception as e: + printers_logger.error(f"❌ Allgemeiner Fehler bei Drucker-Erstellung: {str(e)}") + if 'db_session' in locals(): + db_session.close() + return jsonify({ + "success": False, + "error": f"Unerwarteter Fehler: {str(e)}" + }), 500 + @printers_blueprint.route("/monitor/live-status", methods=["GET"]) @login_required @measure_execution_time(logger=printers_logger, task_name="API-Live-Drucker-Status-Abfrage") diff --git a/backend/database/myp.db b/backend/database/myp.db index d3c69101b..0f74645e7 100644 Binary files a/backend/database/myp.db and b/backend/database/myp.db differ diff --git a/backend/database/myp.db-shm b/backend/database/myp.db-shm index 1f79805dc..bec0bfc9e 100644 Binary files a/backend/database/myp.db-shm and b/backend/database/myp.db-shm differ diff --git a/backend/database/myp.db-wal b/backend/database/myp.db-wal index 24de80b0c..ed3ad3d08 100644 Binary files a/backend/database/myp.db-wal and b/backend/database/myp.db-wal differ diff --git a/backend/instance/sessions/0117bb1b309e242080b2adf87f577cf3_activity.pkl b/backend/instance/sessions/0117bb1b309e242080b2adf87f577cf3_activity.pkl new file mode 100644 index 000000000..107aa26bd Binary files /dev/null and b/backend/instance/sessions/0117bb1b309e242080b2adf87f577cf3_activity.pkl differ diff --git a/backend/instance/sessions/02f7801dd70c7c7a6f2cec09dfebba97_activity.pkl b/backend/instance/sessions/02f7801dd70c7c7a6f2cec09dfebba97_activity.pkl new file mode 100644 index 000000000..65bed7cdc Binary files /dev/null and b/backend/instance/sessions/02f7801dd70c7c7a6f2cec09dfebba97_activity.pkl differ diff --git a/backend/instance/sessions/0492892b87196ecc68518955abff17ce_activity.pkl b/backend/instance/sessions/0492892b87196ecc68518955abff17ce_activity.pkl new file mode 100644 index 000000000..8679d4542 Binary files /dev/null and b/backend/instance/sessions/0492892b87196ecc68518955abff17ce_activity.pkl differ diff --git a/backend/instance/sessions/0fb4c158c43ad789a17fdde272bd7500_activity.pkl b/backend/instance/sessions/0fb4c158c43ad789a17fdde272bd7500_activity.pkl new file mode 100644 index 000000000..0a9f11238 Binary files /dev/null and b/backend/instance/sessions/0fb4c158c43ad789a17fdde272bd7500_activity.pkl differ diff --git a/backend/instance/sessions/1096751b14447170abd8d0b78c76486a_activity.pkl b/backend/instance/sessions/1096751b14447170abd8d0b78c76486a_activity.pkl new file mode 100644 index 000000000..8ac0df0d3 Binary files /dev/null and b/backend/instance/sessions/1096751b14447170abd8d0b78c76486a_activity.pkl differ diff --git a/backend/instance/sessions/11b09a186ba50f526ebd5e0569f2cccc_activity.pkl b/backend/instance/sessions/11b09a186ba50f526ebd5e0569f2cccc_activity.pkl new file mode 100644 index 000000000..c27472bb2 Binary files /dev/null and b/backend/instance/sessions/11b09a186ba50f526ebd5e0569f2cccc_activity.pkl differ diff --git a/backend/instance/sessions/17641789e7a0dd91f1ce563a2a219f8f_activity.pkl b/backend/instance/sessions/17641789e7a0dd91f1ce563a2a219f8f_activity.pkl new file mode 100644 index 000000000..7c435be22 Binary files /dev/null and b/backend/instance/sessions/17641789e7a0dd91f1ce563a2a219f8f_activity.pkl differ diff --git a/backend/instance/sessions/18426dae1f34e91a15ba05e44108c310_activity.pkl b/backend/instance/sessions/18426dae1f34e91a15ba05e44108c310_activity.pkl new file mode 100644 index 000000000..301f70350 Binary files /dev/null and b/backend/instance/sessions/18426dae1f34e91a15ba05e44108c310_activity.pkl differ diff --git a/backend/instance/sessions/1a7e6763d8bebc8209461a5ccdc93326_activity.pkl b/backend/instance/sessions/1a7e6763d8bebc8209461a5ccdc93326_activity.pkl new file mode 100644 index 000000000..d54f52830 Binary files /dev/null and b/backend/instance/sessions/1a7e6763d8bebc8209461a5ccdc93326_activity.pkl differ diff --git a/backend/instance/sessions/1cd02687d723f25bf285c01706a9fec7_activity.pkl b/backend/instance/sessions/1cd02687d723f25bf285c01706a9fec7_activity.pkl new file mode 100644 index 000000000..73f1b7462 Binary files /dev/null and b/backend/instance/sessions/1cd02687d723f25bf285c01706a9fec7_activity.pkl differ diff --git a/backend/instance/sessions/1d092b18e05214dad95f0c7332326601_activity.pkl b/backend/instance/sessions/1d092b18e05214dad95f0c7332326601_activity.pkl new file mode 100644 index 000000000..1968493fe Binary files /dev/null and b/backend/instance/sessions/1d092b18e05214dad95f0c7332326601_activity.pkl differ diff --git a/backend/instance/sessions/1d4268c897d11cce6872b0ac139e56d0_activity.pkl b/backend/instance/sessions/1d4268c897d11cce6872b0ac139e56d0_activity.pkl new file mode 100644 index 000000000..c74b4919f Binary files /dev/null and b/backend/instance/sessions/1d4268c897d11cce6872b0ac139e56d0_activity.pkl differ diff --git a/backend/instance/sessions/1ec4bd37b533c027d3d14ffd451d32d8_activity.pkl b/backend/instance/sessions/1ec4bd37b533c027d3d14ffd451d32d8_activity.pkl new file mode 100644 index 000000000..62062b31b Binary files /dev/null and b/backend/instance/sessions/1ec4bd37b533c027d3d14ffd451d32d8_activity.pkl differ diff --git a/backend/instance/sessions/213416f09e584e87d1b46890169275cb_activity.pkl b/backend/instance/sessions/213416f09e584e87d1b46890169275cb_activity.pkl new file mode 100644 index 000000000..07770a018 Binary files /dev/null and b/backend/instance/sessions/213416f09e584e87d1b46890169275cb_activity.pkl differ diff --git a/backend/instance/sessions/24662bacf8d9fe7877cb713a008d5c62_activity.pkl b/backend/instance/sessions/24662bacf8d9fe7877cb713a008d5c62_activity.pkl new file mode 100644 index 000000000..92c833b32 Binary files /dev/null and b/backend/instance/sessions/24662bacf8d9fe7877cb713a008d5c62_activity.pkl differ diff --git a/backend/instance/sessions/24670b2dc3deab0dfd77d9b0deff8dec_activity.pkl b/backend/instance/sessions/24670b2dc3deab0dfd77d9b0deff8dec_activity.pkl new file mode 100644 index 000000000..242b11a79 Binary files /dev/null and b/backend/instance/sessions/24670b2dc3deab0dfd77d9b0deff8dec_activity.pkl differ diff --git a/backend/instance/sessions/24826e8e92f3cbedda3ff5ff501be655_activity.pkl b/backend/instance/sessions/24826e8e92f3cbedda3ff5ff501be655_activity.pkl new file mode 100644 index 000000000..5f81e8862 Binary files /dev/null and b/backend/instance/sessions/24826e8e92f3cbedda3ff5ff501be655_activity.pkl differ diff --git a/backend/instance/sessions/24b960ad4b115f288fd5361ee76dcb74_activity.pkl b/backend/instance/sessions/24b960ad4b115f288fd5361ee76dcb74_activity.pkl new file mode 100644 index 000000000..1b9887b81 Binary files /dev/null and b/backend/instance/sessions/24b960ad4b115f288fd5361ee76dcb74_activity.pkl differ diff --git a/backend/instance/sessions/26508e2e91d83638c47dd04bcfcf5fd3_activity.pkl b/backend/instance/sessions/26508e2e91d83638c47dd04bcfcf5fd3_activity.pkl new file mode 100644 index 000000000..408677396 Binary files /dev/null and b/backend/instance/sessions/26508e2e91d83638c47dd04bcfcf5fd3_activity.pkl differ diff --git a/backend/instance/sessions/2a61c55e2f6d9e473fcc1f727d50034b_activity.pkl b/backend/instance/sessions/2a61c55e2f6d9e473fcc1f727d50034b_activity.pkl new file mode 100644 index 000000000..3e58ac8de Binary files /dev/null and b/backend/instance/sessions/2a61c55e2f6d9e473fcc1f727d50034b_activity.pkl differ diff --git a/backend/instance/sessions/2a8c3976ad9485e281fb7c829e1ef28d_activity.pkl b/backend/instance/sessions/2a8c3976ad9485e281fb7c829e1ef28d_activity.pkl new file mode 100644 index 000000000..14b2daf94 Binary files /dev/null and b/backend/instance/sessions/2a8c3976ad9485e281fb7c829e1ef28d_activity.pkl differ diff --git a/backend/instance/sessions/2ca326e0fd8f80212788ac74591b3ec6_activity.pkl b/backend/instance/sessions/2ca326e0fd8f80212788ac74591b3ec6_activity.pkl new file mode 100644 index 000000000..1e5da2321 Binary files /dev/null and b/backend/instance/sessions/2ca326e0fd8f80212788ac74591b3ec6_activity.pkl differ diff --git a/backend/instance/sessions/2d4838f4340f8929cbf460ecb634ab2e_activity.pkl b/backend/instance/sessions/2d4838f4340f8929cbf460ecb634ab2e_activity.pkl new file mode 100644 index 000000000..ae1e12fc8 Binary files /dev/null and b/backend/instance/sessions/2d4838f4340f8929cbf460ecb634ab2e_activity.pkl differ diff --git a/backend/instance/sessions/2e7a2b24dfcde512c5b65f6c0d74582f_activity.pkl b/backend/instance/sessions/2e7a2b24dfcde512c5b65f6c0d74582f_activity.pkl new file mode 100644 index 000000000..3b64e2d7d Binary files /dev/null and b/backend/instance/sessions/2e7a2b24dfcde512c5b65f6c0d74582f_activity.pkl differ diff --git a/backend/instance/sessions/2ff0f61d7d42c0e4d964d9d6eb3cab91_activity.pkl b/backend/instance/sessions/2ff0f61d7d42c0e4d964d9d6eb3cab91_activity.pkl new file mode 100644 index 000000000..e84baf698 Binary files /dev/null and b/backend/instance/sessions/2ff0f61d7d42c0e4d964d9d6eb3cab91_activity.pkl differ diff --git a/backend/instance/sessions/3cfff1d17f0ccff4083210e5c03a396d_activity.pkl b/backend/instance/sessions/3cfff1d17f0ccff4083210e5c03a396d_activity.pkl new file mode 100644 index 000000000..e4c378e28 Binary files /dev/null and b/backend/instance/sessions/3cfff1d17f0ccff4083210e5c03a396d_activity.pkl differ diff --git a/backend/instance/sessions/3d4574615b955e192461a80a458b5b82_activity.pkl b/backend/instance/sessions/3d4574615b955e192461a80a458b5b82_activity.pkl new file mode 100644 index 000000000..b38a71513 Binary files /dev/null and b/backend/instance/sessions/3d4574615b955e192461a80a458b5b82_activity.pkl differ diff --git a/backend/instance/sessions/3f66679a7eaadd07c2c7f2a1fd3ed68b_activity.pkl b/backend/instance/sessions/3f66679a7eaadd07c2c7f2a1fd3ed68b_activity.pkl new file mode 100644 index 000000000..5c5df3ef7 Binary files /dev/null and b/backend/instance/sessions/3f66679a7eaadd07c2c7f2a1fd3ed68b_activity.pkl differ diff --git a/backend/instance/sessions/40a6f5a54c201d4b2c5103bf2a020462_activity.pkl b/backend/instance/sessions/40a6f5a54c201d4b2c5103bf2a020462_activity.pkl new file mode 100644 index 000000000..99dc31a0c Binary files /dev/null and b/backend/instance/sessions/40a6f5a54c201d4b2c5103bf2a020462_activity.pkl differ diff --git a/backend/instance/sessions/429d4f4ba4e30e113b53cb8066923a1c_activity.pkl b/backend/instance/sessions/429d4f4ba4e30e113b53cb8066923a1c_activity.pkl new file mode 100644 index 000000000..11acdd15f Binary files /dev/null and b/backend/instance/sessions/429d4f4ba4e30e113b53cb8066923a1c_activity.pkl differ diff --git a/backend/instance/sessions/44125915621f6c22e4b1383858f00226_activity.pkl b/backend/instance/sessions/44125915621f6c22e4b1383858f00226_activity.pkl new file mode 100644 index 000000000..63b52d665 Binary files /dev/null and b/backend/instance/sessions/44125915621f6c22e4b1383858f00226_activity.pkl differ diff --git a/backend/instance/sessions/4724eaa7a29b12bd70850437cf248513_activity.pkl b/backend/instance/sessions/4724eaa7a29b12bd70850437cf248513_activity.pkl new file mode 100644 index 000000000..ed69ad1d6 Binary files /dev/null and b/backend/instance/sessions/4724eaa7a29b12bd70850437cf248513_activity.pkl differ diff --git a/backend/instance/sessions/489c29f009b2ccd332f88974870835af_activity.pkl b/backend/instance/sessions/489c29f009b2ccd332f88974870835af_activity.pkl new file mode 100644 index 000000000..f7d4bc596 Binary files /dev/null and b/backend/instance/sessions/489c29f009b2ccd332f88974870835af_activity.pkl differ diff --git a/backend/instance/sessions/514a02c75b7f140c2eada89b6b55de47_activity.pkl b/backend/instance/sessions/514a02c75b7f140c2eada89b6b55de47_activity.pkl new file mode 100644 index 000000000..d794c23c3 Binary files /dev/null and b/backend/instance/sessions/514a02c75b7f140c2eada89b6b55de47_activity.pkl differ diff --git a/backend/instance/sessions/52e609b010723496d6e1ee2547f1e298_activity.pkl b/backend/instance/sessions/52e609b010723496d6e1ee2547f1e298_activity.pkl new file mode 100644 index 000000000..695aab747 Binary files /dev/null and b/backend/instance/sessions/52e609b010723496d6e1ee2547f1e298_activity.pkl differ diff --git a/backend/instance/sessions/533f404ec254ae4d59cfad0f19b76830_activity.pkl b/backend/instance/sessions/533f404ec254ae4d59cfad0f19b76830_activity.pkl new file mode 100644 index 000000000..ec58423c4 Binary files /dev/null and b/backend/instance/sessions/533f404ec254ae4d59cfad0f19b76830_activity.pkl differ diff --git a/backend/instance/sessions/547e82cc12b90858aab653f8cb7e8fe6_activity.pkl b/backend/instance/sessions/547e82cc12b90858aab653f8cb7e8fe6_activity.pkl new file mode 100644 index 000000000..e0edd9d7b Binary files /dev/null and b/backend/instance/sessions/547e82cc12b90858aab653f8cb7e8fe6_activity.pkl differ diff --git a/backend/instance/sessions/54e4968ee16e78e83932c53ee1411e80_activity.pkl b/backend/instance/sessions/54e4968ee16e78e83932c53ee1411e80_activity.pkl new file mode 100644 index 000000000..951e5d8e4 Binary files /dev/null and b/backend/instance/sessions/54e4968ee16e78e83932c53ee1411e80_activity.pkl differ diff --git a/backend/instance/sessions/55bb32506c3348a437fd605d783239b5_activity.pkl b/backend/instance/sessions/55bb32506c3348a437fd605d783239b5_activity.pkl new file mode 100644 index 000000000..e6924bcb9 Binary files /dev/null and b/backend/instance/sessions/55bb32506c3348a437fd605d783239b5_activity.pkl differ diff --git a/backend/instance/sessions/5ae652a24d768b4dfea25a0792429c4a_activity.pkl b/backend/instance/sessions/5ae652a24d768b4dfea25a0792429c4a_activity.pkl new file mode 100644 index 000000000..1f030bc3b Binary files /dev/null and b/backend/instance/sessions/5ae652a24d768b4dfea25a0792429c4a_activity.pkl differ diff --git a/backend/instance/sessions/5bb9de472881485a432b393b329f0ad0_activity.pkl b/backend/instance/sessions/5bb9de472881485a432b393b329f0ad0_activity.pkl new file mode 100644 index 000000000..361adb659 Binary files /dev/null and b/backend/instance/sessions/5bb9de472881485a432b393b329f0ad0_activity.pkl differ diff --git a/backend/instance/sessions/5bbc75080a0afd4977054fc86e96b898_activity.pkl b/backend/instance/sessions/5bbc75080a0afd4977054fc86e96b898_activity.pkl new file mode 100644 index 000000000..6d231fbf0 Binary files /dev/null and b/backend/instance/sessions/5bbc75080a0afd4977054fc86e96b898_activity.pkl differ diff --git a/backend/instance/sessions/5dfbef6b07bb88ace758ad7ef368e9d8_activity.pkl b/backend/instance/sessions/5dfbef6b07bb88ace758ad7ef368e9d8_activity.pkl new file mode 100644 index 000000000..934a81565 Binary files /dev/null and b/backend/instance/sessions/5dfbef6b07bb88ace758ad7ef368e9d8_activity.pkl differ diff --git a/backend/instance/sessions/608fca003dda6aecfe84aa7ad4724cc0_activity.pkl b/backend/instance/sessions/608fca003dda6aecfe84aa7ad4724cc0_activity.pkl new file mode 100644 index 000000000..255c51c14 Binary files /dev/null and b/backend/instance/sessions/608fca003dda6aecfe84aa7ad4724cc0_activity.pkl differ diff --git a/backend/instance/sessions/634038da751500b63e955442cead4279_activity.pkl b/backend/instance/sessions/634038da751500b63e955442cead4279_activity.pkl new file mode 100644 index 000000000..f01443939 Binary files /dev/null and b/backend/instance/sessions/634038da751500b63e955442cead4279_activity.pkl differ diff --git a/backend/instance/sessions/63a3adbef3a07bb861a923e689b7609e_activity.pkl b/backend/instance/sessions/63a3adbef3a07bb861a923e689b7609e_activity.pkl new file mode 100644 index 000000000..bc9ba40f1 Binary files /dev/null and b/backend/instance/sessions/63a3adbef3a07bb861a923e689b7609e_activity.pkl differ diff --git a/backend/instance/sessions/66608c54317f6259618d1d2374e32e59_activity.pkl b/backend/instance/sessions/66608c54317f6259618d1d2374e32e59_activity.pkl new file mode 100644 index 000000000..dae24323c Binary files /dev/null and b/backend/instance/sessions/66608c54317f6259618d1d2374e32e59_activity.pkl differ diff --git a/backend/instance/sessions/6c5e97227d69b80472e1d847bda0fa81_activity.pkl b/backend/instance/sessions/6c5e97227d69b80472e1d847bda0fa81_activity.pkl new file mode 100644 index 000000000..8908b041a Binary files /dev/null and b/backend/instance/sessions/6c5e97227d69b80472e1d847bda0fa81_activity.pkl differ diff --git a/backend/instance/sessions/6c7a481349f17021792e54e203f529a0_activity.pkl b/backend/instance/sessions/6c7a481349f17021792e54e203f529a0_activity.pkl new file mode 100644 index 000000000..b6f2f21f4 Binary files /dev/null and b/backend/instance/sessions/6c7a481349f17021792e54e203f529a0_activity.pkl differ diff --git a/backend/instance/sessions/6d7190aacbd0e169afbce4b727ac342f_activity.pkl b/backend/instance/sessions/6d7190aacbd0e169afbce4b727ac342f_activity.pkl new file mode 100644 index 000000000..0a52bd6bc Binary files /dev/null and b/backend/instance/sessions/6d7190aacbd0e169afbce4b727ac342f_activity.pkl differ diff --git a/backend/instance/sessions/6f9133bb07d308e81aa9d2a9af337374_activity.pkl b/backend/instance/sessions/6f9133bb07d308e81aa9d2a9af337374_activity.pkl new file mode 100644 index 000000000..1a6dd2054 Binary files /dev/null and b/backend/instance/sessions/6f9133bb07d308e81aa9d2a9af337374_activity.pkl differ diff --git a/backend/instance/sessions/77fa831f08524d542886c36bfe35ad18_activity.pkl b/backend/instance/sessions/77fa831f08524d542886c36bfe35ad18_activity.pkl new file mode 100644 index 000000000..a53cd884a Binary files /dev/null and b/backend/instance/sessions/77fa831f08524d542886c36bfe35ad18_activity.pkl differ diff --git a/backend/instance/sessions/79d5d2e2d466669d0daba75fcb20f786_activity.pkl b/backend/instance/sessions/79d5d2e2d466669d0daba75fcb20f786_activity.pkl new file mode 100644 index 000000000..41f15ceea Binary files /dev/null and b/backend/instance/sessions/79d5d2e2d466669d0daba75fcb20f786_activity.pkl differ diff --git a/backend/instance/sessions/7ccfb0a02fc10ce52c43afb237127517_activity.pkl b/backend/instance/sessions/7ccfb0a02fc10ce52c43afb237127517_activity.pkl new file mode 100644 index 000000000..1aa57a7fe Binary files /dev/null and b/backend/instance/sessions/7ccfb0a02fc10ce52c43afb237127517_activity.pkl differ diff --git a/backend/instance/sessions/7db5f95afae7b134d3b7b20056947f37_activity.pkl b/backend/instance/sessions/7db5f95afae7b134d3b7b20056947f37_activity.pkl new file mode 100644 index 000000000..b0ddf235f Binary files /dev/null and b/backend/instance/sessions/7db5f95afae7b134d3b7b20056947f37_activity.pkl differ diff --git a/backend/instance/sessions/7dfadfbe0d8fb4d163b0447cc6400781_activity.pkl b/backend/instance/sessions/7dfadfbe0d8fb4d163b0447cc6400781_activity.pkl new file mode 100644 index 000000000..480d6f68e Binary files /dev/null and b/backend/instance/sessions/7dfadfbe0d8fb4d163b0447cc6400781_activity.pkl differ diff --git a/backend/instance/sessions/8015957d6408decb69b85457664cfcea_activity.pkl b/backend/instance/sessions/8015957d6408decb69b85457664cfcea_activity.pkl new file mode 100644 index 000000000..da4fa84f4 Binary files /dev/null and b/backend/instance/sessions/8015957d6408decb69b85457664cfcea_activity.pkl differ diff --git a/backend/instance/sessions/8175f6c1eb38d37e903073755862179e_activity.pkl b/backend/instance/sessions/8175f6c1eb38d37e903073755862179e_activity.pkl new file mode 100644 index 000000000..519b8fafd Binary files /dev/null and b/backend/instance/sessions/8175f6c1eb38d37e903073755862179e_activity.pkl differ diff --git a/backend/instance/sessions/81ed1b2532ca1cfe4d10efd7ee07191c_activity.pkl b/backend/instance/sessions/81ed1b2532ca1cfe4d10efd7ee07191c_activity.pkl new file mode 100644 index 000000000..96459c3eb Binary files /dev/null and b/backend/instance/sessions/81ed1b2532ca1cfe4d10efd7ee07191c_activity.pkl differ diff --git a/backend/instance/sessions/8228d5ee8ab2c13607df9afb1984f0cd_activity.pkl b/backend/instance/sessions/8228d5ee8ab2c13607df9afb1984f0cd_activity.pkl new file mode 100644 index 000000000..2e59c0020 Binary files /dev/null and b/backend/instance/sessions/8228d5ee8ab2c13607df9afb1984f0cd_activity.pkl differ diff --git a/backend/instance/sessions/82a77b0be0efff4a4727c6af662f63ce_activity.pkl b/backend/instance/sessions/82a77b0be0efff4a4727c6af662f63ce_activity.pkl new file mode 100644 index 000000000..6596b470c Binary files /dev/null and b/backend/instance/sessions/82a77b0be0efff4a4727c6af662f63ce_activity.pkl differ diff --git a/backend/instance/sessions/899cb761617f99e60db19655450708d1_activity.pkl b/backend/instance/sessions/899cb761617f99e60db19655450708d1_activity.pkl new file mode 100644 index 000000000..0fcac4a79 Binary files /dev/null and b/backend/instance/sessions/899cb761617f99e60db19655450708d1_activity.pkl differ diff --git a/backend/instance/sessions/8f4d100eb597e9e7cd17d045e7b6aa51_activity.pkl b/backend/instance/sessions/8f4d100eb597e9e7cd17d045e7b6aa51_activity.pkl new file mode 100644 index 000000000..407897da0 Binary files /dev/null and b/backend/instance/sessions/8f4d100eb597e9e7cd17d045e7b6aa51_activity.pkl differ diff --git a/backend/instance/sessions/97e48bb84e7a96f5974d1bf5a12f3dd9_activity.pkl b/backend/instance/sessions/97e48bb84e7a96f5974d1bf5a12f3dd9_activity.pkl new file mode 100644 index 000000000..467ced9ec Binary files /dev/null and b/backend/instance/sessions/97e48bb84e7a96f5974d1bf5a12f3dd9_activity.pkl differ diff --git a/backend/instance/sessions/9a2b054d41c6bae36f3afb3cdf390c50_activity.pkl b/backend/instance/sessions/9a2b054d41c6bae36f3afb3cdf390c50_activity.pkl new file mode 100644 index 000000000..337164283 Binary files /dev/null and b/backend/instance/sessions/9a2b054d41c6bae36f3afb3cdf390c50_activity.pkl differ diff --git a/backend/instance/sessions/9b38c398792a2e5390fd952f3b971cbf_activity.pkl b/backend/instance/sessions/9b38c398792a2e5390fd952f3b971cbf_activity.pkl new file mode 100644 index 000000000..c4b2bc10e Binary files /dev/null and b/backend/instance/sessions/9b38c398792a2e5390fd952f3b971cbf_activity.pkl differ diff --git a/backend/instance/sessions/9dcd9765d2aab746ca56cbdb9275b99b_activity.pkl b/backend/instance/sessions/9dcd9765d2aab746ca56cbdb9275b99b_activity.pkl new file mode 100644 index 000000000..14f643765 Binary files /dev/null and b/backend/instance/sessions/9dcd9765d2aab746ca56cbdb9275b99b_activity.pkl differ diff --git a/backend/instance/sessions/9f63db840bfa3444d8ffcde9e7774e30_activity.pkl b/backend/instance/sessions/9f63db840bfa3444d8ffcde9e7774e30_activity.pkl new file mode 100644 index 000000000..36b12a58c Binary files /dev/null and b/backend/instance/sessions/9f63db840bfa3444d8ffcde9e7774e30_activity.pkl differ diff --git a/backend/instance/sessions/9fc6b6fe089f300222d3c6a57e465e8b_activity.pkl b/backend/instance/sessions/9fc6b6fe089f300222d3c6a57e465e8b_activity.pkl new file mode 100644 index 000000000..9a216d598 Binary files /dev/null and b/backend/instance/sessions/9fc6b6fe089f300222d3c6a57e465e8b_activity.pkl differ diff --git a/backend/instance/sessions/a5d65a696a98b781af57308473cb1113_activity.pkl b/backend/instance/sessions/a5d65a696a98b781af57308473cb1113_activity.pkl new file mode 100644 index 000000000..5b0777af5 Binary files /dev/null and b/backend/instance/sessions/a5d65a696a98b781af57308473cb1113_activity.pkl differ diff --git a/backend/instance/sessions/a7c6c01e6c48e0551ebf91964d580db7_activity.pkl b/backend/instance/sessions/a7c6c01e6c48e0551ebf91964d580db7_activity.pkl new file mode 100644 index 000000000..500e4b2c4 Binary files /dev/null and b/backend/instance/sessions/a7c6c01e6c48e0551ebf91964d580db7_activity.pkl differ diff --git a/backend/instance/sessions/a873fff891470054c0210978c383d428_activity.pkl b/backend/instance/sessions/a873fff891470054c0210978c383d428_activity.pkl new file mode 100644 index 000000000..8dd4e5e3f Binary files /dev/null and b/backend/instance/sessions/a873fff891470054c0210978c383d428_activity.pkl differ diff --git a/backend/instance/sessions/aba8cec0e1ce92c4576e6f87a8c39689_activity.pkl b/backend/instance/sessions/aba8cec0e1ce92c4576e6f87a8c39689_activity.pkl new file mode 100644 index 000000000..33b7f172a Binary files /dev/null and b/backend/instance/sessions/aba8cec0e1ce92c4576e6f87a8c39689_activity.pkl differ diff --git a/backend/instance/sessions/ac3ddf8ddf8a0ab8ab4f9cd7e20e121f_activity.pkl b/backend/instance/sessions/ac3ddf8ddf8a0ab8ab4f9cd7e20e121f_activity.pkl new file mode 100644 index 000000000..4ce2d4274 Binary files /dev/null and b/backend/instance/sessions/ac3ddf8ddf8a0ab8ab4f9cd7e20e121f_activity.pkl differ diff --git a/backend/instance/sessions/ae115a1a5bb3ee6658e780cc98efab4b_activity.pkl b/backend/instance/sessions/ae115a1a5bb3ee6658e780cc98efab4b_activity.pkl new file mode 100644 index 000000000..bc17bb9ac Binary files /dev/null and b/backend/instance/sessions/ae115a1a5bb3ee6658e780cc98efab4b_activity.pkl differ diff --git a/backend/instance/sessions/b1e5b51c846c4e1c6b57ad0634b6ce43_activity.pkl b/backend/instance/sessions/b1e5b51c846c4e1c6b57ad0634b6ce43_activity.pkl new file mode 100644 index 000000000..aaad1b352 Binary files /dev/null and b/backend/instance/sessions/b1e5b51c846c4e1c6b57ad0634b6ce43_activity.pkl differ diff --git a/backend/instance/sessions/b2f7c7aa47422f7f6d71e63f0ae777ad_activity.pkl b/backend/instance/sessions/b2f7c7aa47422f7f6d71e63f0ae777ad_activity.pkl new file mode 100644 index 000000000..0a607149e Binary files /dev/null and b/backend/instance/sessions/b2f7c7aa47422f7f6d71e63f0ae777ad_activity.pkl differ diff --git a/backend/instance/sessions/b4c357e1237fd230003c8256b7c7c799_activity.pkl b/backend/instance/sessions/b4c357e1237fd230003c8256b7c7c799_activity.pkl new file mode 100644 index 000000000..462e86260 Binary files /dev/null and b/backend/instance/sessions/b4c357e1237fd230003c8256b7c7c799_activity.pkl differ diff --git a/backend/instance/sessions/b7aa1bcd9472e78b52dfc98b45351f77_activity.pkl b/backend/instance/sessions/b7aa1bcd9472e78b52dfc98b45351f77_activity.pkl new file mode 100644 index 000000000..a0921e52b Binary files /dev/null and b/backend/instance/sessions/b7aa1bcd9472e78b52dfc98b45351f77_activity.pkl differ diff --git a/backend/instance/sessions/ba6e50c8478a91841c8e6bdf37a06d49_activity.pkl b/backend/instance/sessions/ba6e50c8478a91841c8e6bdf37a06d49_activity.pkl new file mode 100644 index 000000000..98ecd9009 Binary files /dev/null and b/backend/instance/sessions/ba6e50c8478a91841c8e6bdf37a06d49_activity.pkl differ diff --git a/backend/instance/sessions/c25b2c45321f03b2bff03363dce63dfb_activity.pkl b/backend/instance/sessions/c25b2c45321f03b2bff03363dce63dfb_activity.pkl new file mode 100644 index 000000000..881a8d5cf Binary files /dev/null and b/backend/instance/sessions/c25b2c45321f03b2bff03363dce63dfb_activity.pkl differ diff --git a/backend/instance/sessions/c29ba9bbd2a383511febc0d967498cd5_activity.pkl b/backend/instance/sessions/c29ba9bbd2a383511febc0d967498cd5_activity.pkl new file mode 100644 index 000000000..640d74a4d Binary files /dev/null and b/backend/instance/sessions/c29ba9bbd2a383511febc0d967498cd5_activity.pkl differ diff --git a/backend/instance/sessions/c2be2fe46b2e537cd38dcb16c3b62716_activity.pkl b/backend/instance/sessions/c2be2fe46b2e537cd38dcb16c3b62716_activity.pkl new file mode 100644 index 000000000..43e0f5d81 Binary files /dev/null and b/backend/instance/sessions/c2be2fe46b2e537cd38dcb16c3b62716_activity.pkl differ diff --git a/backend/instance/sessions/c2ede199a62a589fed8f0499e226d463_activity.pkl b/backend/instance/sessions/c2ede199a62a589fed8f0499e226d463_activity.pkl new file mode 100644 index 000000000..e22141a14 Binary files /dev/null and b/backend/instance/sessions/c2ede199a62a589fed8f0499e226d463_activity.pkl differ diff --git a/backend/instance/sessions/c517b64848494bfb947a2c9a603aecba_activity.pkl b/backend/instance/sessions/c517b64848494bfb947a2c9a603aecba_activity.pkl new file mode 100644 index 000000000..b4efd0fd0 Binary files /dev/null and b/backend/instance/sessions/c517b64848494bfb947a2c9a603aecba_activity.pkl differ diff --git a/backend/instance/sessions/c95545c29193833a9ad4c03299fdcc6c_activity.pkl b/backend/instance/sessions/c95545c29193833a9ad4c03299fdcc6c_activity.pkl new file mode 100644 index 000000000..ba7fca9be Binary files /dev/null and b/backend/instance/sessions/c95545c29193833a9ad4c03299fdcc6c_activity.pkl differ diff --git a/backend/instance/sessions/ce9523740267e62f6806d2f8fa6cb0cb_activity.pkl b/backend/instance/sessions/ce9523740267e62f6806d2f8fa6cb0cb_activity.pkl new file mode 100644 index 000000000..011a13609 Binary files /dev/null and b/backend/instance/sessions/ce9523740267e62f6806d2f8fa6cb0cb_activity.pkl differ diff --git a/backend/instance/sessions/d23272b18649354188eb20fb02378138_activity.pkl b/backend/instance/sessions/d23272b18649354188eb20fb02378138_activity.pkl new file mode 100644 index 000000000..54d7553ec Binary files /dev/null and b/backend/instance/sessions/d23272b18649354188eb20fb02378138_activity.pkl differ diff --git a/backend/instance/sessions/d6b77410963747a32f3e8f50a2e86da8_activity.pkl b/backend/instance/sessions/d6b77410963747a32f3e8f50a2e86da8_activity.pkl new file mode 100644 index 000000000..c0af94408 Binary files /dev/null and b/backend/instance/sessions/d6b77410963747a32f3e8f50a2e86da8_activity.pkl differ diff --git a/backend/instance/sessions/db765c6bac5b6ebd6cda34c1898b70f0_activity.pkl b/backend/instance/sessions/db765c6bac5b6ebd6cda34c1898b70f0_activity.pkl new file mode 100644 index 000000000..bccb636dd Binary files /dev/null and b/backend/instance/sessions/db765c6bac5b6ebd6cda34c1898b70f0_activity.pkl differ diff --git a/backend/instance/sessions/dba1dab051c5c6834d4c3f545ddd9666_activity.pkl b/backend/instance/sessions/dba1dab051c5c6834d4c3f545ddd9666_activity.pkl new file mode 100644 index 000000000..3c4cc708c Binary files /dev/null and b/backend/instance/sessions/dba1dab051c5c6834d4c3f545ddd9666_activity.pkl differ diff --git a/backend/instance/sessions/dc10e20b5649f20b05a4c7b6513be15a_activity.pkl b/backend/instance/sessions/dc10e20b5649f20b05a4c7b6513be15a_activity.pkl new file mode 100644 index 000000000..b6a0313bb Binary files /dev/null and b/backend/instance/sessions/dc10e20b5649f20b05a4c7b6513be15a_activity.pkl differ diff --git a/backend/instance/sessions/dc1dac1525a01115313280596bf82fa9_activity.pkl b/backend/instance/sessions/dc1dac1525a01115313280596bf82fa9_activity.pkl new file mode 100644 index 000000000..85984561e Binary files /dev/null and b/backend/instance/sessions/dc1dac1525a01115313280596bf82fa9_activity.pkl differ diff --git a/backend/instance/sessions/dc1dc78e3e2c744de19046607d2bc623_activity.pkl b/backend/instance/sessions/dc1dc78e3e2c744de19046607d2bc623_activity.pkl new file mode 100644 index 000000000..f4f96237a Binary files /dev/null and b/backend/instance/sessions/dc1dc78e3e2c744de19046607d2bc623_activity.pkl differ diff --git a/backend/instance/sessions/dcb1fe2f9e5187172811804c4366c832_activity.pkl b/backend/instance/sessions/dcb1fe2f9e5187172811804c4366c832_activity.pkl new file mode 100644 index 000000000..878145693 Binary files /dev/null and b/backend/instance/sessions/dcb1fe2f9e5187172811804c4366c832_activity.pkl differ diff --git a/backend/instance/sessions/dce52e005aaed012f4d1665a192fb559_activity.pkl b/backend/instance/sessions/dce52e005aaed012f4d1665a192fb559_activity.pkl new file mode 100644 index 000000000..3ed57c92d Binary files /dev/null and b/backend/instance/sessions/dce52e005aaed012f4d1665a192fb559_activity.pkl differ diff --git a/backend/instance/sessions/de27c70d90cb4b87b6c276cb0dba0de3_activity.pkl b/backend/instance/sessions/de27c70d90cb4b87b6c276cb0dba0de3_activity.pkl new file mode 100644 index 000000000..6cf740998 Binary files /dev/null and b/backend/instance/sessions/de27c70d90cb4b87b6c276cb0dba0de3_activity.pkl differ diff --git a/backend/instance/sessions/df3b927f539ac4fb694128ee04ca2ea9_activity.pkl b/backend/instance/sessions/df3b927f539ac4fb694128ee04ca2ea9_activity.pkl new file mode 100644 index 000000000..7d553ad79 Binary files /dev/null and b/backend/instance/sessions/df3b927f539ac4fb694128ee04ca2ea9_activity.pkl differ diff --git a/backend/instance/sessions/df7798249839a455fc890178030a129a_activity.pkl b/backend/instance/sessions/df7798249839a455fc890178030a129a_activity.pkl new file mode 100644 index 000000000..2fede16ff Binary files /dev/null and b/backend/instance/sessions/df7798249839a455fc890178030a129a_activity.pkl differ diff --git a/backend/instance/sessions/e06ad1f11bfa8e61e0f760addc6774e1_activity.pkl b/backend/instance/sessions/e06ad1f11bfa8e61e0f760addc6774e1_activity.pkl new file mode 100644 index 000000000..7117b9b44 Binary files /dev/null and b/backend/instance/sessions/e06ad1f11bfa8e61e0f760addc6774e1_activity.pkl differ diff --git a/backend/instance/sessions/e37dbe9e648893420966a397dd68acdf_activity.pkl b/backend/instance/sessions/e37dbe9e648893420966a397dd68acdf_activity.pkl new file mode 100644 index 000000000..91b73b4bc Binary files /dev/null and b/backend/instance/sessions/e37dbe9e648893420966a397dd68acdf_activity.pkl differ diff --git a/backend/instance/sessions/e57232f4240b1c0864141772e8d00a9e_activity.pkl b/backend/instance/sessions/e57232f4240b1c0864141772e8d00a9e_activity.pkl new file mode 100644 index 000000000..947f8416d Binary files /dev/null and b/backend/instance/sessions/e57232f4240b1c0864141772e8d00a9e_activity.pkl differ diff --git a/backend/instance/sessions/e73c493f702a07fd54389fbf2e4e8efd_activity.pkl b/backend/instance/sessions/e73c493f702a07fd54389fbf2e4e8efd_activity.pkl new file mode 100644 index 000000000..5e36d1e35 Binary files /dev/null and b/backend/instance/sessions/e73c493f702a07fd54389fbf2e4e8efd_activity.pkl differ diff --git a/backend/instance/sessions/ea0a84630df96c6db6388f5ba6862bb5_activity.pkl b/backend/instance/sessions/ea0a84630df96c6db6388f5ba6862bb5_activity.pkl new file mode 100644 index 000000000..8aeb09eb2 Binary files /dev/null and b/backend/instance/sessions/ea0a84630df96c6db6388f5ba6862bb5_activity.pkl differ diff --git a/backend/instance/sessions/ea864f0c1ed2a452099f9e8a49fbe4b8_activity.pkl b/backend/instance/sessions/ea864f0c1ed2a452099f9e8a49fbe4b8_activity.pkl new file mode 100644 index 000000000..3c495ab23 Binary files /dev/null and b/backend/instance/sessions/ea864f0c1ed2a452099f9e8a49fbe4b8_activity.pkl differ diff --git a/backend/instance/sessions/eb84f65b1c0b89dbb2efc310d898084f_activity.pkl b/backend/instance/sessions/eb84f65b1c0b89dbb2efc310d898084f_activity.pkl new file mode 100644 index 000000000..dc06e6d34 Binary files /dev/null and b/backend/instance/sessions/eb84f65b1c0b89dbb2efc310d898084f_activity.pkl differ diff --git a/backend/instance/sessions/eda0a4804d1afa73beb1b76233df040f_activity.pkl b/backend/instance/sessions/eda0a4804d1afa73beb1b76233df040f_activity.pkl new file mode 100644 index 000000000..c2ace08b1 Binary files /dev/null and b/backend/instance/sessions/eda0a4804d1afa73beb1b76233df040f_activity.pkl differ diff --git a/backend/instance/sessions/eda85a3c3e57e1774ecfefbda0716971_activity.pkl b/backend/instance/sessions/eda85a3c3e57e1774ecfefbda0716971_activity.pkl new file mode 100644 index 000000000..93ef62a03 Binary files /dev/null and b/backend/instance/sessions/eda85a3c3e57e1774ecfefbda0716971_activity.pkl differ diff --git a/backend/instance/sessions/f0718f956c4d5745c3b8042da77e6ba6_activity.pkl b/backend/instance/sessions/f0718f956c4d5745c3b8042da77e6ba6_activity.pkl new file mode 100644 index 000000000..b4ccc178b Binary files /dev/null and b/backend/instance/sessions/f0718f956c4d5745c3b8042da77e6ba6_activity.pkl differ diff --git a/backend/instance/sessions/f08338fef4a7303edfd1a18f1759f2dd_activity.pkl b/backend/instance/sessions/f08338fef4a7303edfd1a18f1759f2dd_activity.pkl new file mode 100644 index 000000000..8e8dd0c3b Binary files /dev/null and b/backend/instance/sessions/f08338fef4a7303edfd1a18f1759f2dd_activity.pkl differ diff --git a/backend/instance/sessions/f17a3ea53b3dd29e9b2e8f9adb882125_activity.pkl b/backend/instance/sessions/f17a3ea53b3dd29e9b2e8f9adb882125_activity.pkl new file mode 100644 index 000000000..18b3f1037 Binary files /dev/null and b/backend/instance/sessions/f17a3ea53b3dd29e9b2e8f9adb882125_activity.pkl differ diff --git a/backend/instance/sessions/f2b1bd037d9c3d20d8acd19f2b750856_activity.pkl b/backend/instance/sessions/f2b1bd037d9c3d20d8acd19f2b750856_activity.pkl new file mode 100644 index 000000000..e0dfb635e Binary files /dev/null and b/backend/instance/sessions/f2b1bd037d9c3d20d8acd19f2b750856_activity.pkl differ diff --git a/backend/instance/sessions/f45ddda32e37fb60cfd857b4f2a717e9_activity.pkl b/backend/instance/sessions/f45ddda32e37fb60cfd857b4f2a717e9_activity.pkl new file mode 100644 index 000000000..7f4da7b1b Binary files /dev/null and b/backend/instance/sessions/f45ddda32e37fb60cfd857b4f2a717e9_activity.pkl differ diff --git a/backend/instance/sessions/f7589aa1382b1b20349b2a26ca0741be_activity.pkl b/backend/instance/sessions/f7589aa1382b1b20349b2a26ca0741be_activity.pkl new file mode 100644 index 000000000..6722dc937 Binary files /dev/null and b/backend/instance/sessions/f7589aa1382b1b20349b2a26ca0741be_activity.pkl differ diff --git a/backend/instance/sessions/fa499d8d1b2a70dbfbdbdb38c83af968_activity.pkl b/backend/instance/sessions/fa499d8d1b2a70dbfbdbdb38c83af968_activity.pkl new file mode 100644 index 000000000..101242699 Binary files /dev/null and b/backend/instance/sessions/fa499d8d1b2a70dbfbdbdb38c83af968_activity.pkl differ diff --git a/backend/instance/sessions/fab887e58300f8a9869fc079809ef040_activity.pkl b/backend/instance/sessions/fab887e58300f8a9869fc079809ef040_activity.pkl new file mode 100644 index 000000000..05bd66136 Binary files /dev/null and b/backend/instance/sessions/fab887e58300f8a9869fc079809ef040_activity.pkl differ diff --git a/backend/instance/sessions/fb90e5db8274038e8e6183c5f9ab35cf_activity.pkl b/backend/instance/sessions/fb90e5db8274038e8e6183c5f9ab35cf_activity.pkl new file mode 100644 index 000000000..aed3be03c Binary files /dev/null and b/backend/instance/sessions/fb90e5db8274038e8e6183c5f9ab35cf_activity.pkl differ diff --git a/backend/instance/sessions/fb9e59cf542b80b3aae5b07836de9df3_activity.pkl b/backend/instance/sessions/fb9e59cf542b80b3aae5b07836de9df3_activity.pkl new file mode 100644 index 000000000..64440e966 Binary files /dev/null and b/backend/instance/sessions/fb9e59cf542b80b3aae5b07836de9df3_activity.pkl differ diff --git a/backend/instance/sessions/fcdad40157766497c141b1ee9c3cf3bc_activity.pkl b/backend/instance/sessions/fcdad40157766497c141b1ee9c3cf3bc_activity.pkl new file mode 100644 index 000000000..986bdabc1 Binary files /dev/null and b/backend/instance/sessions/fcdad40157766497c141b1ee9c3cf3bc_activity.pkl differ diff --git a/backend/instance/sessions/fd714e22d0a15c109b5a9d2b780fe037_activity.pkl b/backend/instance/sessions/fd714e22d0a15c109b5a9d2b780fe037_activity.pkl new file mode 100644 index 000000000..1b0ce18e5 Binary files /dev/null and b/backend/instance/sessions/fd714e22d0a15c109b5a9d2b780fe037_activity.pkl differ diff --git a/backend/instance/sessions/fe1d0f457c64b28910f1008700f84ab2_activity.pkl b/backend/instance/sessions/fe1d0f457c64b28910f1008700f84ab2_activity.pkl new file mode 100644 index 000000000..638eee654 Binary files /dev/null and b/backend/instance/sessions/fe1d0f457c64b28910f1008700f84ab2_activity.pkl differ diff --git a/backend/instance/sessions/ff152c57fd1b13d4c143a2f084397093_activity.pkl b/backend/instance/sessions/ff152c57fd1b13d4c143a2f084397093_activity.pkl new file mode 100644 index 000000000..6d58d7392 Binary files /dev/null and b/backend/instance/sessions/ff152c57fd1b13d4c143a2f084397093_activity.pkl differ diff --git a/backend/logs/admin/admin.log b/backend/logs/admin/admin.log index 0a4792fe8..515936a73 100644 --- a/backend/logs/admin/admin.log +++ b/backend/logs/admin/admin.log @@ -275,3 +275,12 @@ 2025-06-16 00:53:08 - [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-16 00:53:08 - [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:53:33 - [admin] admin - [INFO] INFO - Admin-Check für Funktion guest_requests: User authenticated: True, User ID: 1, Is Admin: True +2025-06-16 01:00:23 - [admin] admin - [INFO] INFO - Admin-Check für Funktion advanced_settings: User authenticated: True, User ID: 1, Is Admin: True +2025-06-16 01:00:23 - [admin] admin - [INFO] INFO - Erweiterte Einstellungen geladen von admin +2025-06-16 01:00:23 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der erweiterten Einstellungen: 'maintenance_info' is undefined +2025-06-16 01:00:25 - [admin] admin - [INFO] INFO - Admin-Check für Funktion advanced_settings: User authenticated: True, User ID: 1, Is Admin: True +2025-06-16 01:00:25 - [admin] admin - [INFO] INFO - Erweiterte Einstellungen geladen von admin +2025-06-16 01:00:25 - [admin] admin - [ERROR] ERROR - Fehler beim Laden der erweiterten Einstellungen: 'maintenance_info' is undefined +2025-06-16 01:01:20 - [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-16 01:01:20 - [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 01:01:23 - [admin] admin - [INFO] INFO - Admin-Check für Funktion guest_requests: User authenticated: True, User ID: 1, Is Admin: True diff --git a/backend/logs/admin_api/admin_api.log b/backend/logs/admin_api/admin_api.log index cc4dc0782..183491e73 100644 --- a/backend/logs/admin_api/admin_api.log +++ b/backend/logs/admin_api/admin_api.log @@ -90,3 +90,5 @@ 2025-06-16 00:53:08 - [admin_api] admin_api - [INFO] INFO - System-Health-Check durchgeführt: unhealthy 2025-06-16 00:53:09 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check für Error-Recovery fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') 2025-06-16 00:53:09 - [admin_api] admin_api - [INFO] INFO - Error-Recovery-Status abgerufen: critical +2025-06-16 01:01:20 - [admin_api] admin_api - [ERROR] ERROR - Datenbank-Health-Check fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-16 01:01:20 - [admin_api] admin_api - [INFO] INFO - System-Health-Check durchgeführt: unhealthy diff --git a/backend/logs/api/api.log b/backend/logs/api/api.log index 311af2ce9..6a64aa4ce 100644 --- a/backend/logs/api/api.log +++ b/backend/logs/api/api.log @@ -27,3 +27,4 @@ 2025-06-16 00:50:46 - [api] api - [INFO] INFO - Statistiken abgerufen von Benutzer admin 2025-06-16 00:52:38 - [api] api - [INFO] INFO - Statistiken abgerufen von Benutzer admin 2025-06-16 00:53:08 - [api] api - [INFO] INFO - Statistiken abgerufen von Benutzer admin +2025-06-16 01:01:20 - [api] api - [INFO] INFO - Statistiken abgerufen von Benutzer admin diff --git a/backend/logs/app/app.log b/backend/logs/app/app.log index dd9282485..417e8e39a 100644 --- a/backend/logs/app/app.log +++ b/backend/logs/app/app.log @@ -35566,3 +35566,895 @@ jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined 2025-06-16 00:54:21 - [app] app - [DEBUG] DEBUG - Request: POST /api/printers 2025-06-16 00:54:21 - [app] app - [WARNING] WARNING - Method Not Allowed (405): POST http://127.0.0.1:5000/api/printers 2025-06-16 00:54:21 - [app] app - [DEBUG] DEBUG - Response: 405 +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:54:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:54:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:54:22 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:54:34 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 00:54:34 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 00:54:34 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 00:54:37 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:54:38 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:54:38 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:54:38 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:54:38 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:54:39 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:54:39 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:54:39 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:54:49 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 00:54:49 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 00:54:49 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 00:54:51 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:54:53 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:54:54 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:54:54 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:54:54 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:54:54 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:54:54 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:54:54 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:54:55 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:54:55 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:54:55 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:54:57 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:54:57 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:55:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:55:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:55:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:55:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:56:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:56:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:56:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:56:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:57:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:57:22 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:59:47 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:59:48 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:59:49 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:59:49 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:59:50 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 00:59:51 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 00:59:52 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 00:59:52 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 00:59:54 - [app] app - [INFO] INFO - Locating template 'dashboard.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/dashboard.html') +2025-06-16 00:59:54 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:59:54 - [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:59:54 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:59:54 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:59:54 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:56 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 00:59:56 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 00:59:56 - [app] app - [DEBUG] DEBUG - Request: GET /printers +2025-06-16 00:59:56 - [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:59:56 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:59:57 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 00:59:57 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 00:59:57 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:59 - [app] app - [DEBUG] DEBUG - Request: GET /calendar +2025-06-16 00:59:59 - [app] app - [INFO] INFO - Locating template 'calendar.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/calendar.html') +2025-06-16 00:59:59 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 00:59:59 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 00:59:59 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 00:59:59 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/events +2025-06-16 01:00:00 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:00:00 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:00 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:00 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:02 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:02 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:02 - [app] app - [INFO] INFO - Steckdosen-Status geloggt: Drucker 1, Status: unreachable, Quelle: system +2025-06-16 01:00:02 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:02 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:00:02 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:06 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 01:00:06 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 01:00:06 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 01:00:14 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 01:00:16 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 01:00:16 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 01:00:16 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 01:00:16 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 01:00:17 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 01:00:17 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 01:00:17 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 01:00:18 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 01:00:19 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 01:00:19 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 01:00:19 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 01:00:19 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 01:00:20 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 01:00:20 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 01:00:20 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 01:00:23 - [app] app - [INFO] INFO - Locating template 'admin_advanced_settings.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/admin_advanced_settings.html') +2025-06-16 01:00:23 - [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 01:00:23 - [app] app - [ERROR] ERROR - Unhandled Exception - ID: 20250616_010023 +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - URL: http://127.0.0.1:5000/admin/advanced-settings +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - Method: GET +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - User: admin +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - Exception Type: UndefinedError +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - Exception: 'maintenance_info' is undefined +2025-06-16 01:00:23 - [app] app - [ERROR] ERROR - Traceback: Traceback (most recent call last): + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 326, in advanced_settings + return render_template('admin_advanced_settings.html', stats=stats, optimization_settings=optimization_settings) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 152, in render_template + return _render(app, template, context) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 133, in _render + rv = template.render(context) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render + self.environment.handle_exception() + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception + raise rewrite_traceback_stack(source=source) + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 1, in top-level template code + {% extends "base.html" %} + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html", line 459, in top-level template code + {% block content %}{% endblock %} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 532, in block 'content' + {{ maintenance_info.last_backup }} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 485, in getattr + return getattr(obj, attribute) + ^^^^^^^^^^^^^^^^^^^^^^^ +jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 867, in full_dispatch_request + rv = self.dispatch_request() + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 852, in dispatch_request + return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask_login/utils.py", line 290, in decorated_view + return current_app.ensure_sync(func)(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 88, in decorated_function + return f(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 350, in advanced_settings + return render_template('admin_advanced_settings.html', stats=stats, optimization_settings=optimization_settings) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 152, in render_template + return _render(app, template, context) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 133, in _render + rv = template.render(context) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render + self.environment.handle_exception() + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception + raise rewrite_traceback_stack(source=source) + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 1, in top-level template code + {% extends "base.html" %} + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html", line 459, in top-level template code + {% block content %}{% endblock %} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 532, in block 'content' + {{ maintenance_info.last_backup }} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 485, in getattr + return getattr(obj, attribute) + ^^^^^^^^^^^^^^^^^^^^^^^ +jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined + +2025-06-16 01:00:23 - [app] app - [INFO] INFO - Locating template 'errors/500.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/errors/500.html') +2025-06-16 01:00:23 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 01:00:25 - [app] app - [DEBUG] DEBUG - Request: GET /admin/advanced-settings +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - Unhandled Exception - ID: 20250616_010025 +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - URL: http://127.0.0.1:5000/admin/advanced-settings +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - Method: GET +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - User: admin +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - Exception Type: UndefinedError +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - Exception: 'maintenance_info' is undefined +2025-06-16 01:00:25 - [app] app - [ERROR] ERROR - Traceback: Traceback (most recent call last): + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 326, in advanced_settings + return render_template('admin_advanced_settings.html', stats=stats, optimization_settings=optimization_settings) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 152, in render_template + return _render(app, template, context) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 133, in _render + rv = template.render(context) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render + self.environment.handle_exception() + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception + raise rewrite_traceback_stack(source=source) + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 1, in top-level template code + {% extends "base.html" %} + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html", line 459, in top-level template code + {% block content %}{% endblock %} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 532, in block 'content' + {{ maintenance_info.last_backup }} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 485, in getattr + return getattr(obj, attribute) + ^^^^^^^^^^^^^^^^^^^^^^^ +jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 867, in full_dispatch_request + rv = self.dispatch_request() + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/app.py", line 852, in dispatch_request + return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask_login/utils.py", line 290, in decorated_view + return current_app.ensure_sync(func)(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 88, in decorated_function + return f(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/admin_unified.py", line 350, in advanced_settings + return render_template('admin_advanced_settings.html', stats=stats, optimization_settings=optimization_settings) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 152, in render_template + return _render(app, template, context) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/flask/templating.py", line 133, in _render + rv = template.render(context) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render + self.environment.handle_exception() + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception + raise rewrite_traceback_stack(source=source) + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 1, in top-level template code + {% extends "base.html" %} + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/base.html", line 459, in top-level template code + {% block content %}{% endblock %} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/templates/admin_advanced_settings.html", line 532, in block 'content' + {{ maintenance_info.last_backup }} + ^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/jinja2/environment.py", line 485, in getattr + return getattr(obj, attribute) + ^^^^^^^^^^^^^^^^^^^^^^^ +jinja2.exceptions.UndefinedError: 'maintenance_info' is undefined + +2025-06-16 01:00:25 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 01:00:25 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:25 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:26 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:26 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:31 - [app] app - [DEBUG] DEBUG - Request: GET /request +2025-06-16 01:00:31 - [app] app - [INFO] INFO - Locating template 'guest_request.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/guest_request.html') +2025-06-16 01:00:31 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:31 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:31 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:33 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:33 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:34 - [app] app - [DEBUG] DEBUG - Request: GET /stats +2025-06-16 01:00:34 - [app] app - [INFO] INFO - Locating template 'stats.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/stats.html') +2025-06-16 01:00:34 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:35 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:35 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/energy/dashboard +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/energy/statistics +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Request: GET /api/energy/live +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:36 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Request: GET /calendar +2025-06-16 01:00:37 - [app] app - [INFO] INFO - Locating template 'calendar.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/calendar.html') +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/events +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:37 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:38 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:38 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:38 - [app] app - [DEBUG] DEBUG - Request: GET /printers +2025-06-16 01:00:38 - [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 01:00:38 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 01:00:39 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:39 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /dashboard +2025-06-16 01:00:39 - [app] app - [INFO] INFO - Locating template 'dashboard.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/dashboard.html') +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:40 - [app] app - [INFO] INFO - Steckdosen-Status geloggt: Drucker 1, Status: unreachable, Quelle: system +2025-06-16 01:00:40 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:41 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:41 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:44 - [app] app - [DEBUG] DEBUG - Request: GET /requests/overview +2025-06-16 01:00:44 - [app] app - [INFO] INFO - Locating template 'guest_requests_overview.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/guest_requests_overview.html') +2025-06-16 01:00:44 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:44 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:44 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:46 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:46 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:48 - [app] app - [DEBUG] DEBUG - Request: GET /dashboard +2025-06-16 01:00:48 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:48 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:00:48 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:50 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:50 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:52 - [app] app - [DEBUG] DEBUG - Request: POST /auth/logout +2025-06-16 01:00:52 - [app] app - [DEBUG] DEBUG - Response: 302 +2025-06-16 01:00:52 - [app] app - [DEBUG] DEBUG - Request: GET /auth/login +2025-06-16 01:00:52 - [app] app - [INFO] INFO - Locating template 'login.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/login.html') +2025-06-16 01:00:52 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:54 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:54 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:00:57 - [app] app - [DEBUG] DEBUG - Request: GET /request +2025-06-16 01:00:57 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:00:59 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:00:59 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:00 - [app] app - [DEBUG] DEBUG - Request: POST /request +2025-06-16 01:01:00 - [app] app - [INFO] INFO - 6-stelliger OTP generiert für Guest Request 2 +2025-06-16 01:01:00 - [app] app - [DEBUG] DEBUG - Response: 302 +2025-06-16 01:01:00 - [app] app - [DEBUG] DEBUG - Request: GET /request/2 +2025-06-16 01:01:00 - [app] app - [INFO] INFO - Locating template 'guest_status.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/guest_status.html') +2025-06-16 01:01:00 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:04 - [app] app - [DEBUG] DEBUG - Request: GET /request/2 +2025-06-16 01:01:04 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:06 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:06 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:07 - [app] app - [DEBUG] DEBUG - Request: GET /auth/login +2025-06-16 01:01:07 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:08 - [app] app - [DEBUG] DEBUG - Request: POST /auth/login +2025-06-16 01:01:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:09 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:09 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Request: GET / +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Response: 302 +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Request: GET /dashboard +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:10 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:12 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:12 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Request: GET /api/stats +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/system-health +2025-06-16 01:01:20 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: Textual SQL expression 'SELECT 1' should be explicitly declared as text('SELECT 1') +2025-06-16 01:01:20 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:21 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:21 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Request: GET /admin/guest-requests +2025-06-16 01:01:23 - [app] app - [INFO] INFO - Locating template 'admin_guest_requests.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/admin_guest_requests.html') +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/requests +2025-06-16 01:01:23 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:25 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:25 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:29 - [app] app - [DEBUG] DEBUG - Request: POST /api/requests/2/approve +2025-06-16 01:01:30 - [app] app - [INFO] INFO - 6-stelliger OTP generiert für Guest Request 2 +2025-06-16 01:01:30 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:30 - [app] app - [DEBUG] DEBUG - Request: GET /api/admin/requests +2025-06-16 01:01:30 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:39 - [app] app - [DEBUG] DEBUG - Request: GET /requests/overview +2025-06-16 01:01:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:40 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:40 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:41 - [app] app - [DEBUG] DEBUG - Request: POST /api/guest/start-job +2025-06-16 01:01:42 - [app] app - [WARNING] WARNING - Ungültiger OTP-Code für Guest Request 1 +2025-06-16 01:01:42 - [app] app - [INFO] INFO - OTP erfolgreich verifiziert für Guest Request 2 +2025-06-16 01:01:42 - [app] app - [INFO] INFO - OTP als verwendet markiert für Guest Request 2 +2025-06-16 01:01:50 - [app] app - [ERROR] ERROR - Datenbank-Transaktion fehlgeschlagen: 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 01:01:50 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Request: GET /printers +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 01:01:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 01:01:52 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:52 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Request: GET /calendar +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/events +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:53 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:54 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:54 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:55 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:01:55 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:01:56 - [app] app - [INFO] INFO - Steckdosen-Status geloggt: Drucker 1, Status: unreachable, Quelle: system +2025-06-16 01:01:56 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:01:56 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:01:56 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:00 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/events +2025-06-16 01:02:00 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:00 - [app] app - [DEBUG] DEBUG - Request: GET /api/calendar/statistics +2025-06-16 01:02:00 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Request: GET /jobs +2025-06-16 01:02:09 - [app] app - [INFO] INFO - Locating template 'jobs.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/jobs.html') +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Request: GET /api/jobs +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Request: GET /api/printers +2025-06-16 01:02:09 - [app] app - [INFO] INFO - ✅ API: 6 Drucker abgerufen (include_inactive=False) +2025-06-16 01:02:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:11 - [app] app - [DEBUG] DEBUG - Request: GET /sw.js +2025-06-16 01:02:11 - [app] app - [DEBUG] DEBUG - Response: 304 +2025-06-16 01:02:13 - [app] app - [DEBUG] DEBUG - Request: DELETE /api/jobs/1 +2025-06-16 01:02:13 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 01:02:16 - [app] app - [DEBUG] DEBUG - Request: DELETE /api/jobs/2 +2025-06-16 01:02:16 - [app] app - [DEBUG] DEBUG - Response: 500 +2025-06-16 01:02:18 - [app] app - [DEBUG] DEBUG - Request: GET /jobs +2025-06-16 01:02:18 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:18 - [app] app - [DEBUG] DEBUG - Request: GET /.well-known/appspecific/com.chrome.devtools.json +2025-06-16 01:02:18 - [app] app - [INFO] INFO - Not Found (404): http://127.0.0.1:5000/.well-known/appspecific/com.chrome.devtools.json +2025-06-16 01:02:18 - [app] app - [INFO] INFO - Locating template 'errors/404.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/errors/404.html') +2025-06-16 01:02:18 - [app] app - [DEBUG] DEBUG - Response: 404 +2025-06-16 01:02:24 - [app] app - [ERROR] ERROR - CSRF-Fehler für /api/printers: The CSRF session token is missing. +2025-06-16 01:02:24 - [app] app - [ERROR] ERROR - Request Headers: {'Host': '127.0.0.1:5000', 'User-Agent': 'curl/7.79.1', 'Accept': '*/*', 'Content-Type': 'application/json', 'X-Csrftoken': 'test', 'Content-Length': '81'} +2025-06-16 01:02:24 - [app] app - [ERROR] ERROR - Request Form: {} +2025-06-16 01:02:24 - [app] app - [DEBUG] DEBUG - CSRF-Token generiert: IjdkZWU0Mz... +2025-06-16 01:02:24 - [app] app - [DEBUG] DEBUG - Response: 400 +2025-06-16 01:02:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:02:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/jobs +2025-06-16 01:02:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:02:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:03:09 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:03:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:03:09 - [app] app - [DEBUG] DEBUG - Request: GET /api/jobs +2025-06-16 01:03:09 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:03:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/notifications +2025-06-16 01:03:39 - [app] app - [DEBUG] DEBUG - Request: GET /api/jobs +2025-06-16 01:03:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:03:39 - [app] app - [DEBUG] DEBUG - Response: 200 +2025-06-16 01:03:49 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 01:03:49 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 01:03:49 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 01:03:49 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 01:03:50 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 01:03:50 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 01:03:50 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 01:03:50 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 01:03:51 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 01:03:51 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 01:03:51 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 01:03:56 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 01:03:56 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 01:03:56 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 01:03:56 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 01:03:57 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 01:03:57 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 01:03:57 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 01:03:57 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 01:03:58 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 01:03:58 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 01:03:58 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 +2025-06-16 01:04:09 - [app] app - [INFO] INFO - [SHUTDOWN] 🧹 Cleanup wird ausgeführt... +2025-06-16 01:04:09 - [app] app - [INFO] INFO - [SHUTDOWN] ✅ Queue Manager gestoppt +2025-06-16 01:04:09 - [app] app - [ERROR] ERROR - [SHUTDOWN] ❌ Cleanup-Fehler: 'BackgroundTaskScheduler' object has no attribute 'shutdown' +2025-06-16 01:04:10 - [app] app - [INFO] INFO - Optimierte SQLite-Engine erstellt: ./database/myp.db +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [CONFIG] Erkannte Umgebung: development +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [CONFIG] Production-Modus: False +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [CONFIG] Verwende Development-Konfiguration +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [DEVELOPMENT] Aktiviere Development-Konfiguration +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ MYP Development Environment Konfiguration aktiviert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Environment: Development/Testing +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ Debug Mode: True +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [DEVELOPMENT] ✅ SQL Echo: True +2025-06-16 01:04:11 - [app] app - [INFO] INFO - SQLite für Raspberry Pi optimiert (reduzierte Cache-Größe, SD-Karten I/O) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Admin-Berechtigungen beim Start korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] 🚀 Starte MYP DEVELOPMENT-Umgebung +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] 🏢 Mercedes-Benz TBA Marienfelde +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] 🔒 Air-Gapped: True +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] Initialisiere Datenbank... +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Datenbank mit Optimierungen initialisiert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] ✅ Datenbank initialisiert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] Prüfe Initial-Admin... +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Admin-Benutzer admin (admin@mercedes-benz.com) existiert bereits. Passwort wurde zurückgesetzt. +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] ✅ Admin-Benutzer geprüft +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] Initialisiere statische Drucker... +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 1 (192.168.0.100) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 2 (192.168.0.101) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 3 (192.168.0.102) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 4 (192.168.0.103) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 5 (192.168.0.104) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - Drucker aktualisiert: Drucker 6 (192.168.0.106) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - ✅ Statische Drucker-Initialisierung abgeschlossen: 0 erstellt, 6 aktualisiert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - 📍 Alle Drucker sind für Standort 'TBA Marienfelde' konfiguriert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - 🌐 IP-Bereich: 192.168.0.100-106 (außer .105) +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] ✅ Statische Drucker konfiguriert +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] Starte Queue Manager... +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] ✅ Queue Manager gestartet +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] Starte Job Scheduler... +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] ✅ Job Scheduler gestartet +2025-06-16 01:04:11 - [app] app - [INFO] INFO - [STARTUP] 🌐 Server startet auf http://0.0.0.0:5000 diff --git a/backend/logs/auth/auth.log b/backend/logs/auth/auth.log index bf8929e5a..02d157523 100644 --- a/backend/logs/auth/auth.log +++ b/backend/logs/auth/auth.log @@ -88,3 +88,6 @@ WHERE users.username = ? OR users.email = ? 2025-06-15 23:56:11 - [auth] auth - [INFO] INFO - Benutzer admin@mercedes-benz.com hat sich abgemeldet 2025-06-15 23:56:36 - [auth] auth - [WARNING] WARNING - JSON-Parsing fehlgeschlagen: 400 Bad Request: Failed to decode JSON object: Expecting value: line 1 column 1 (char 0) 2025-06-15 23:56:36 - [auth] auth - [INFO] INFO - Benutzer admin@mercedes-benz.com hat sich erfolgreich angemeldet +2025-06-16 01:00:52 - [auth] auth - [INFO] INFO - Benutzer admin@mercedes-benz.com hat sich abgemeldet +2025-06-16 01:01:08 - [auth] auth - [WARNING] WARNING - JSON-Parsing fehlgeschlagen: 400 Bad Request: Failed to decode JSON object: Expecting value: line 1 column 1 (char 0) +2025-06-16 01:01:09 - [auth] auth - [INFO] INFO - Benutzer admin@mercedes-benz.com hat sich erfolgreich angemeldet diff --git a/backend/logs/calendar/calendar.log b/backend/logs/calendar/calendar.log index b1465786d..1b0e004ec 100644 --- a/backend/logs/calendar/calendar.log +++ b/backend/logs/calendar/calendar.log @@ -29,3 +29,7 @@ 2025-06-16 00:45:34 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 1 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 2025-06-16 00:48:18 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 1 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 2025-06-16 00:53:40 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 1 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-16 01:00:02 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 1 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-16 01:00:40 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 1 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 +2025-06-16 01:01:56 - [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-16 01:02:00 - [calendar] calendar - [INFO] INFO - 📅 Kalender-Events abgerufen: 44 Einträge für Zeitraum 2025-06-14 22:00:00+00:00 bis 2025-06-21 22:00:00+00:00 diff --git a/backend/logs/data_management/data_management.log b/backend/logs/data_management/data_management.log index 5a018c8a8..189a378a7 100644 --- a/backend/logs/data_management/data_management.log +++ b/backend/logs/data_management/data_management.log @@ -495,3 +495,21 @@ 2025-06-16 00:52:30 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:52:31 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert 2025-06-16 00:52:31 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:37 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:54:37 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:51 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:54:51 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:48 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:59:48 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:50 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 00:59:50 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:14 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 01:00:14 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:18 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 01:00:18 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:50 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 01:03:50 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:57 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 01:03:57 - [data_management] data_management - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:04:10 - [data_management] data_management - [INFO] INFO - ✅ Data Management Module initialisiert +2025-06-16 01:04:10 - [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 25b715f98..3d2d6dd8d 100644 --- a/backend/logs/energy_monitoring/energy_monitoring.log +++ b/backend/logs/energy_monitoring/energy_monitoring.log @@ -336,3 +336,19 @@ 2025-06-16 00:52:34 - [energy_monitoring] energy_monitoring - [INFO] INFO - [OK] API-Live-Energiedaten 'api_live_energy_data' erfolgreich in 114.17ms 2025-06-16 00:52:34 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiestatistiken erfolgreich erstellt für Zeitraum: today 2025-06-16 00:52:34 - [energy_monitoring] energy_monitoring - [INFO] INFO - [OK] API-Energiestatistiken 'api_energy_statistics' erfolgreich in 153.70ms +2025-06-16 00:54:38 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 00:54:54 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 00:59:48 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 00:59:52 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 01:00:16 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 01:00:19 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - 📊 API-Energiemonitoring-Dashboard von admin +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - 📈 API-Energiestatistiken (today) von admin +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - [OK] API-Live-Energiedaten 'api_live_energy_data' erfolgreich in 4.62ms +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiestatistiken erfolgreich erstellt für Zeitraum: today +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - [OK] API-Energiestatistiken 'api_energy_statistics' erfolgreich in 9.13ms +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Dashboard-Daten erfolgreich erstellt: 0 Geräte online +2025-06-16 01:00:36 - [energy_monitoring] energy_monitoring - [INFO] INFO - [OK] API-Energiemonitoring-Dashboard 'api_energy_dashboard' erfolgreich in 15.18ms +2025-06-16 01:03:50 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 01:03:57 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert +2025-06-16 01:04:11 - [energy_monitoring] energy_monitoring - [INFO] INFO - ✅ Energiemonitoring-Blueprint initialisiert diff --git a/backend/logs/guest/guest.log b/backend/logs/guest/guest.log index 0ac80239c..bec73b5fb 100644 --- a/backend/logs/guest/guest.log +++ b/backend/logs/guest/guest.log @@ -55,3 +55,8 @@ WHERE user_permissions.can_approve_jobs = 1] 2025-06-15 23:55:56 - [guest] guest - [INFO] INFO - Gastanfrage 1 genehmigt von Admin 1 (admin), Drucker: Drucker 1 2025-06-15 23:56:30 - [guest] guest - [WARNING] WARNING - Fehler beim Einschalten des Druckers: 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-15 23:56:30 - [guest] guest - [ERROR] ERROR - Fehler beim Starten des Jobs mit Code: 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 01:01:00 - [guest] guest - [INFO] INFO - Neue Gastanfrage erstellt: ID 2, Name: testeadmin@example.com, OTP generiert +2025-06-16 01:01:29 - [guest] guest - [INFO] INFO - Automatisch Drucker 1 (Drucker 1) für Gastanfrage 2 zugewiesen +2025-06-16 01:01:30 - [guest] guest - [INFO] INFO - Gastanfrage 2 genehmigt von Admin 1 (admin), Drucker: Drucker 1 +2025-06-16 01:01:50 - [guest] guest - [WARNING] WARNING - Fehler beim Einschalten des Druckers: 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 01:01:50 - [guest] guest - [ERROR] ERROR - Fehler beim Starten des Jobs mit Code: 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/hardware_integration/hardware_integration.log b/backend/logs/hardware_integration/hardware_integration.log index 7ab8ff3fb..160905f97 100644 --- a/backend/logs/hardware_integration/hardware_integration.log +++ b/backend/logs/hardware_integration/hardware_integration.log @@ -1815,3 +1815,66 @@ 2025-06-16 00:52:34 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 6 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' 2025-06-16 00:52:34 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Energiestatistiken erfolgreich gesammelt: 0/6 Geräte online 2025-06-16 00:52:34 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Gesamtverbrauch: 0.0W aktuell, 0.0Wh heute +2025-06-16 00:54:37 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:54:37 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:54:37 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:54:37 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 00:54:51 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:54:51 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:54:51 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:54:51 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 00:59:48 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:59:48 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:59:48 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:59:48 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 00:59:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 00:59:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 00:59:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 00:59:50 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 01:00:14 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 01:00:14 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 01:00:14 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 01:00:14 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 01:00:18 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 01:00:18 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 01:00:18 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 01:00:18 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 🔋 Sammle Energiestatistiken von allen P110 Steckdosen... +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 1 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 2 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 3 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 4 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 5 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 6 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Energiestatistiken erfolgreich gesammelt: 0/6 Geräte online +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Gesamtverbrauch: 0.0W aktuell, 0.0Wh heute +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 🔋 Sammle Energiestatistiken von allen P110 Steckdosen... +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 🔋 Sammle Energiestatistiken von allen P110 Steckdosen... +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 1 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 2 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 3 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 4 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 5 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 6 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Energiestatistiken erfolgreich gesammelt: 0/6 Geräte online +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Gesamtverbrauch: 0.0W aktuell, 0.0Wh heute +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 1 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 2 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 3 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 4 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 5 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [WARNING] WARNING - ⚠️ Konnte Energiedaten für Drucker 6 nicht abrufen: module 'PyP100.PyP100' has no attribute 'P110' +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Energiestatistiken erfolgreich gesammelt: 0/6 Geräte online +2025-06-16 01:00:36 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Gesamtverbrauch: 0.0W aktuell, 0.0Wh heute +2025-06-16 01:03:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 01:03:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 01:03:50 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 01:03:50 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 01:03:57 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 01:03:57 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 01:03:57 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 01:03:57 - [hardware_integration] hardware_integration - [INFO] INFO - 📊 Massive Konsolidierung: 2 Dateien → 1 Datei (50% Reduktion) +2025-06-16 01:04:10 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ PyP100 (TP-Link Tapo) verfügbar +2025-06-16 01:04:10 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Printer Monitor initialisiert +2025-06-16 01:04:10 - [hardware_integration] hardware_integration - [INFO] INFO - ✅ Hardware Integration Module initialisiert +2025-06-16 01:04:10 - [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 1fb99cd76..8dcf6e5b3 100644 --- a/backend/logs/job_queue_system/job_queue_system.log +++ b/backend/logs/job_queue_system/job_queue_system.log @@ -971,3 +971,38 @@ 2025-06-16 00:52:31 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert 2025-06-16 00:52:31 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) 2025-06-16 00:52:33 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 00:54:34 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 00:54:37 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:54:37 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:54:39 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 00:54:49 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 00:54:51 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:54:51 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:54:55 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 00:57:30 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 00:57:30 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 00:59:48 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:59:48 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:59:49 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 00:59:50 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 00:59:50 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 00:59:52 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 01:00:06 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 01:00:14 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 01:00:14 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 01:00:17 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 01:00:18 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 01:00:18 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 01:00:20 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 01:03:49 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 01:03:50 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 01:03:50 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 01:03:51 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 01:03:56 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 01:03:57 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 01:03:57 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 01:03:58 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) +2025-06-16 01:04:09 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestoppt (Legacy-Kompatibilität) +2025-06-16 01:04:10 - [job_queue_system] job_queue_system - [INFO] INFO - ✅ Job & Queue System Module initialisiert +2025-06-16 01:04:10 - [job_queue_system] job_queue_system - [INFO] INFO - 📊 MASSIVE Konsolidierung: 4 Dateien → 1 Datei (75% Reduktion) +2025-06-16 01:04:11 - [job_queue_system] job_queue_system - [INFO] INFO - Queue Manager gestartet (Legacy-Kompatibilität) diff --git a/backend/logs/jobs/jobs.log b/backend/logs/jobs/jobs.log index 5886b324d..58eececfc 100644 --- a/backend/logs/jobs/jobs.log +++ b/backend/logs/jobs/jobs.log @@ -667,3 +667,157 @@ IndexError: tuple index out of range 2025-06-16 00:48:15 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1) 2025-06-16 00:53:38 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) 2025-06-16 00:53:38 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 1 von 1 (Seite 1) +2025-06-16 01:02:09 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-16 01:02:09 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 2 von 2 (Seite 1) +2025-06-16 01:02:13 - [jobs] jobs - [INFO] INFO - 🗑️ Lösche Job 1 für Benutzer 1 +2025-06-16 01:02:13 - [jobs] jobs - [ERROR] ERROR - ❌ Fehler beim Löschen des Jobs 1: (sqlite3.IntegrityError) FOREIGN KEY constraint failed +[SQL: DELETE FROM jobs WHERE jobs.id = ?] +[parameters: (1,)] +(Background on this error at: https://sqlalche.me/e/20/gkpj) +Traceback (most recent call last): + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1969, in _exec_single_context + self.dialect.do_execute( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 922, in do_execute + cursor.execute(statement, parameters) +sqlite3.IntegrityError: FOREIGN KEY constraint failed + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/jobs.py", line 419, in delete_job + db_session.commit() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1969, in commit + trans.commit(_to_root=True) + File "", line 2, in commit + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go + ret_value = fn(self, *arg, **kw) + ^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1256, in commit + self._prepare_impl() + File "", line 2, in _prepare_impl + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go + ret_value = fn(self, *arg, **kw) + ^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1231, in _prepare_impl + self.session.flush() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4312, in flush + self._flush(objects) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4447, in _flush + with util.safe_reraise(): + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/util/langhelpers.py", line 146, in __exit__ + raise exc_value.with_traceback(exc_tb) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4408, in _flush + flush_context.execute() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 466, in execute + rec.execute(self) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 679, in execute + util.preloaded.orm_persistence.delete_obj( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 191, in delete_obj + _emit_delete_statements( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 1456, in _emit_delete_statements + c = connection.execute( + ^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1416, in execute + return meth( + ^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 516, in _execute_on_connection + return connection._execute_clauseelement( + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1639, in _execute_clauseelement + ret = self._execute_context( + ^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1848, in _execute_context + return self._exec_single_context( + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1988, in _exec_single_context + self._handle_dbapi_exception( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2343, in _handle_dbapi_exception + raise sqlalchemy_exception.with_traceback(exc_info[2]) from e + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1969, in _exec_single_context + self.dialect.do_execute( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 922, in do_execute + cursor.execute(statement, parameters) +sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) FOREIGN KEY constraint failed +[SQL: DELETE FROM jobs WHERE jobs.id = ?] +[parameters: (1,)] +(Background on this error at: https://sqlalche.me/e/20/gkpj) +2025-06-16 01:02:16 - [jobs] jobs - [INFO] INFO - 🗑️ Lösche Job 2 für Benutzer 1 +2025-06-16 01:02:16 - [jobs] jobs - [ERROR] ERROR - ❌ Fehler beim Löschen des Jobs 2: (sqlite3.IntegrityError) FOREIGN KEY constraint failed +[SQL: DELETE FROM jobs WHERE jobs.id = ?] +[parameters: (2,)] +(Background on this error at: https://sqlalche.me/e/20/gkpj) +Traceback (most recent call last): + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1969, in _exec_single_context + self.dialect.do_execute( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 922, in do_execute + cursor.execute(statement, parameters) +sqlite3.IntegrityError: FOREIGN KEY constraint failed + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/cbin/C0S1-cernel/C02L2/Dateiverwaltung/nextcloud/core/files/3_Beruf_Ausbildung_und_Schule/IHK-Abschlussprüfung/Projektarbeit-MYP/backend/blueprints/jobs.py", line 419, in delete_job + db_session.commit() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1969, in commit + trans.commit(_to_root=True) + File "", line 2, in commit + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go + ret_value = fn(self, *arg, **kw) + ^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1256, in commit + self._prepare_impl() + File "", line 2, in _prepare_impl + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 139, in _go + ret_value = fn(self, *arg, **kw) + ^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1231, in _prepare_impl + self.session.flush() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4312, in flush + self._flush(objects) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4447, in _flush + with util.safe_reraise(): + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/util/langhelpers.py", line 146, in __exit__ + raise exc_value.with_traceback(exc_tb) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4408, in _flush + flush_context.execute() + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 466, in execute + rec.execute(self) + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 679, in execute + util.preloaded.orm_persistence.delete_obj( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 191, in delete_obj + _emit_delete_statements( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 1456, in _emit_delete_statements + c = connection.execute( + ^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1416, in execute + return meth( + ^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 516, in _execute_on_connection + return connection._execute_clauseelement( + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1639, in _execute_clauseelement + ret = self._execute_context( + ^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1848, in _execute_context + return self._exec_single_context( + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1988, in _exec_single_context + self._handle_dbapi_exception( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2343, in _handle_dbapi_exception + raise sqlalchemy_exception.with_traceback(exc_info[2]) from e + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1969, in _exec_single_context + self.dialect.do_execute( + File "/home/core/.local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 922, in do_execute + cursor.execute(statement, parameters) +sqlalchemy.exc.IntegrityError: (sqlite3.IntegrityError) FOREIGN KEY constraint failed +[SQL: DELETE FROM jobs WHERE jobs.id = ?] +[parameters: (2,)] +(Background on this error at: https://sqlalche.me/e/20/gkpj) +2025-06-16 01:02:39 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-16 01:02:39 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 2 von 2 (Seite 1) +2025-06-16 01:03:09 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-16 01:03:09 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 2 von 2 (Seite 1) +2025-06-16 01:03:39 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-16 01:03:39 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 2 von 2 (Seite 1) +2025-06-16 01:04:12 - [jobs] jobs - [INFO] INFO - 📋 Jobs-Abfrage gestartet von Benutzer 1 (Admin: True) +2025-06-16 01:04:12 - [jobs] jobs - [INFO] INFO - ✅ Jobs erfolgreich abgerufen: 2 von 2 (Seite 1) diff --git a/backend/logs/models/models.log b/backend/logs/models/models.log index adb63bc04..9febd4df9 100644 --- a/backend/logs/models/models.log +++ b/backend/logs/models/models.log @@ -8,3 +8,5 @@ 2025-06-15 23:20:59 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' 2025-06-15 23:55:30 - [models] models - [INFO] INFO - Gefunden: 1 Genehmiger für Benachrichtigung 'guest_request' 2025-06-15 23:55:30 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' +2025-06-16 01:01:00 - [models] models - [INFO] INFO - Gefunden: 1 Genehmiger für Benachrichtigung 'guest_request' +2025-06-16 01:01:00 - [models] models - [INFO] INFO - Erfolgreich 1 Benachrichtigungen erstellt für 'guest_request' diff --git a/backend/logs/monitoring_analytics/monitoring_analytics.log b/backend/logs/monitoring_analytics/monitoring_analytics.log index e9a6fcc5c..c11a43135 100644 --- a/backend/logs/monitoring_analytics/monitoring_analytics.log +++ b/backend/logs/monitoring_analytics/monitoring_analytics.log @@ -495,3 +495,21 @@ 2025-06-16 00:52:30 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:52:32 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert 2025-06-16 00:52:32 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:38 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:54:38 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:53 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:54:53 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:48 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:59:48 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:51 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 00:59:51 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:16 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 01:00:16 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:19 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 01:00:19 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:50 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 01:03:50 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:57 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 01:03:57 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - 📊 MASSIVE Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:04:11 - [monitoring_analytics] monitoring_analytics - [INFO] INFO - ✅ Monitoring & Analytics Module initialisiert +2025-06-16 01:04:11 - [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 0780c761d..c453bc00a 100644 --- a/backend/logs/permissions/permissions.log +++ b/backend/logs/permissions/permissions.log @@ -187,3 +187,15 @@ WHERE users.role = ?] 2025-06-16 00:52:30 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-16 00:52:32 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert 2025-06-16 00:53:34 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert +2025-06-16 00:54:38 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:54:54 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:59:49 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 00:59:52 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:00:16 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:00:19 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:01:23 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert +2025-06-16 01:01:29 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert +2025-06-16 01:01:30 - [permissions] permissions - [INFO] INFO - UserPermission für Admin-Benutzer 1 aktualisiert +2025-06-16 01:03:50 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:03:57 - [permissions] permissions - [INFO] INFO - Admin-Berechtigungen korrigiert: 0 erstellt, 0 aktualisiert +2025-06-16 01:04:11 - [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 f8949d8f7..eb2c615d3 100644 --- a/backend/logs/scheduler/scheduler.log +++ b/backend/logs/scheduler/scheduler.log @@ -1226,3 +1226,95 @@ 2025-06-16 00:54:04 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com 2025-06-16 00:54:10 - [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:54:12 - [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:54:32 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:54:37 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:54:39 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:54:39 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:54:39 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:54:42 - [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:54:48 - [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:54:51 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:54:55 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:54:55 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:54:55 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:55:03 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:55:04 - [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:55:12 - [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:55:25 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:55:33 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:55:34 - [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:55:43 - [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:55:55 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:56:04 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:56:04 - [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:56:13 - [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:56:26 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:56:35 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:56:35 - [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:56:43 - [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:56:57 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:57:05 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:57:05 - [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:57:14 - [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:57:27 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:59:48 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:59:49 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:59:49 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:59:49 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:59:50 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 00:59:52 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 00:59:52 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 00:59:52 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 00:59:57 - [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 01:00:01 - [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 01:00:14 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 01:00:17 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 01:00:17 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 01:00:17 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:00:18 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 01:00:20 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 01:00:20 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 01:00:20 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:00:25 - [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 01:00:28 - [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 01:00:47 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:00:50 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:00:55 - [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 01:00:58 - [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 01:01:17 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:01:20 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:01: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 01:01:29 - [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 01:01:48 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:01:51 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:01: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 01:01:59 - [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 01:02:18 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:02:21 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:02: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 01:02:30 - [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 01:02:48 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:02:52 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:02:57 - [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 01:03:00 - [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 01:03:19 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:03:22 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:03:27 - [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 01:03:31 - [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 01:03:49 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:03:50 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 01:03:51 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 01:03:51 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 01:03:51 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:03:57 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 01:03:57 - [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 01:03:58 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 01:03:58 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 01:03:58 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:04: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 01:04:10 - [scheduler] scheduler - [INFO] INFO - Task check_jobs registriert: Intervall 30s, Enabled: True +2025-06-16 01:04:11 - [scheduler] scheduler - [INFO] INFO - Scheduler-Thread gestartet +2025-06-16 01:04:11 - [scheduler] scheduler - [INFO] INFO - Scheduler gestartet +2025-06-16 01:04:11 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:04:19 - [scheduler] scheduler - [INFO] INFO - 🚀 Starte geplanten Job 1: Gastauftrag: testeadmin@example.com +2025-06-16 01:04:20 - [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 295d37dc1..6a4064e6a 100644 --- a/backend/logs/security_suite/security_suite.log +++ b/backend/logs/security_suite/security_suite.log @@ -743,3 +743,30 @@ 2025-06-16 00:52:31 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert 2025-06-16 00:52:31 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) 2025-06-16 00:52:32 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:54:37 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:54:37 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:38 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:54:51 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:54:51 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:54:54 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:59:48 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:59:48 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:48 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 00:59:50 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 00:59:50 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 00:59:52 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 01:00:14 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 01:00:14 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:16 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 01:00:18 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 01:00:18 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:00:19 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 01:03:50 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 01:03:50 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:50 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 01:03:57 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 01:03:57 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:03:57 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert +2025-06-16 01:04:10 - [security_suite] security_suite - [INFO] INFO - ✅ Security Suite Module initialisiert +2025-06-16 01:04:10 - [security_suite] security_suite - [INFO] INFO - 📊 Massive Konsolidierung: 3 Dateien → 1 Datei (67% Reduktion) +2025-06-16 01:04:11 - [security_suite] security_suite - [INFO] INFO - 🔒 Security Suite initialisiert diff --git a/backend/logs/startup/startup.log b/backend/logs/startup/startup.log index 8b6e6cddc..e9927b6da 100644 --- a/backend/logs/startup/startup.log +++ b/backend/logs/startup/startup.log @@ -1944,3 +1944,66 @@ 2025-06-16 00:52:32 - [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:52:32 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:52:32.772222 2025-06-16 00:52:32 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:54:38 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:54:38 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:54:38 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:54:38 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:54:38 - [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:54:38 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:54:38.621972 +2025-06-16 00:54:38 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:54:53 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:54:53 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:54:53 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:54:53 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:54:53 - [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:54:53 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:54:53.950046 +2025-06-16 00:54:53 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:59:48 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:59:48 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:59:48 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:59:48 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:59:48 - [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:59:48 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:59:48.892243 +2025-06-16 00:59:48 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:59:51 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 00:59:51 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 00:59:51 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 00:59:51 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 00:59:51 - [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:59:51 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T00:59:51.985719 +2025-06-16 00:59:51 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:00:16 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:00:16 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 01:00:16 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 01:00:16 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 01:00:16 - [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 01:00:16 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T01:00:16.151830 +2025-06-16 01:00:16 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:00:19 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:00:19 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 01:00:19 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 01:00:19 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 01:00:19 - [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 01:00:19 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T01:00:19.624371 +2025-06-16 01:00:19 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:03:50 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:03:50 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 01:03:50 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 01:03:50 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 01:03:50 - [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 01:03:50 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T01:03:50.767539 +2025-06-16 01:03:50 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:03:57 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:03:57 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 01:03:57 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 01:03:57 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 01:03:57 - [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 01:03:57 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T01:03:57.771009 +2025-06-16 01:03:57 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:04:11 - [startup] startup - [INFO] INFO - ================================================== +2025-06-16 01:04:11 - [startup] startup - [INFO] INFO - [START] MYP Platform Backend wird gestartet... +2025-06-16 01:04:11 - [startup] startup - [INFO] INFO - 🐍 Python Version: 3.11.2 (main, Mar 05 2023, 19:08:04) [GCC] +2025-06-16 01:04:11 - [startup] startup - [INFO] INFO - 💻 Betriebssystem: posix (linux) +2025-06-16 01:04:11 - [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 01:04:11 - [startup] startup - [INFO] INFO - ⏰ Startzeit: 2025-06-16T01:04:11.309042 +2025-06-16 01:04:11 - [startup] startup - [INFO] INFO - ================================================== diff --git a/backend/logs/tapo_controller/tapo_controller.log b/backend/logs/tapo_controller/tapo_controller.log index 1a4886b42..42460b431 100644 --- a/backend/logs/tapo_controller/tapo_controller.log +++ b/backend/logs/tapo_controller/tapo_controller.log @@ -1377,3 +1377,149 @@ 2025-06-16 00:54:10 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 2025-06-16 00:54:12 - [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:54:12 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:54:34 - [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:54:37 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:54:38 - [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:54:42 - [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:54:42 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:54:42 - [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:54:45 - [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:54:48 - [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:54:48 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:54:51 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:54:57 - [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:55:01 - [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:55:04 - [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:55:04 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:55:06 - [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:55:09 - [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:55:12 - [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:55:12 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:55:27 - [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:55:31 - [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:55:34 - [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:55:34 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:55:35 - [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:55:39 - [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:55:43 - [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:55:43 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:55:58 - [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:56:01 - [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:56:04 - [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:56:04 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:56:06 - [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:56:09 - [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:56:13 - [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:56:13 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:56:28 - [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:56:32 - [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:56:35 - [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:56:35 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:56:37 - [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:56:40 - [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:56:43 - [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:56:43 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:56:59 - [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:57:02 - [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:57:05 - [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:57:05 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:57:07 - [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:57:11 - [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:57:14 - [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:57:14 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:57:30 - [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:59:48 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:59:50 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 00:59:51 - [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:59:54 - [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:59:55 - [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:59:57 - [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:59:57 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 00:59:58 - [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 01:00:01 - [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 01:00:01 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:00:02 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Fehler bei Tapo-Steckdosen-Status-Check 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:00:02 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Status-Check für 192.168.0.100 fehlgeschlagen: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:00:14 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 01:00:18 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 01:00:19 - [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 01:00:22 - [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 01:00:22 - [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 01:00:25 - [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 01:00:25 - [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 01:00:25 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:00:28 - [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 01:00:28 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:00:40 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Fehler bei Tapo-Steckdosen-Status-Check 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:00:40 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Status-Check für 192.168.0.100 fehlgeschlagen: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:00: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 01:00:52 - [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 01:00: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 01:00:55 - [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 01:00:55 - [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 01:00:55 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:00:58 - [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 01:00:58 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:01:19 - [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 01:01: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 01:01:23 - [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 01:01: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 01:01:26 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:01:26 - [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 01:01:29 - [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 01:01:29 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:01:44 - [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 01:01:47 - [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 01:01: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 01:01:50 - [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 01:01:50 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:01:53 - [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 01:01: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) +2025-06-16 01:01:56 - [tapo_controller] tapo_controller - [WARNING] WARNING - ⚠️ Fehler bei Tapo-Steckdosen-Status-Check 192.168.0.100: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:01:56 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Status-Check für 192.168.0.100 fehlgeschlagen: HTTPConnectionPool(host='192.168.1.101', port=3128): Read timed out. (read timeout=2) +2025-06-16 01:01: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 01:01:56 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:01:56 - [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 01:01:59 - [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 01:01:59 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:02: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 01:02: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 01:02:23 - [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 01:02: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 01:02:26 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:02:27 - [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 01:02:30 - [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 01:02:30 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:02:51 - [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 01:02:54 - [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 01:02:54 - [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 01:02:57 - [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 01:02:57 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:02:57 - [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 01:03:00 - [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 01:03:00 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:03:21 - [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 01:03:24 - [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 01:03:25 - [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 01:03:27 - [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 01:03:27 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:03:28 - [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 01:03:31 - [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 01:03:31 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:03:50 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 01:03:51 - [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 01:03:53 - [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 01:03:54 - [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 01:03:57 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 01:03:57 - [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 01:03:57 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:04:00 - [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 01:04:03 - [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 01:04:06 - [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 01:04:06 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:04:10 - [tapo_controller] tapo_controller - [INFO] INFO - ✅ tapo controller initialisiert +2025-06-16 01:04:13 - [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 01:04:17 - [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 01:04:20 - [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 01:04:20 - [tapo_controller] tapo_controller - [ERROR] ERROR - ❌ Alle 3 Versuche fehlgeschlagen beim einschalten der Tapo-Steckdose 192.168.0.100 +2025-06-16 01:04:21 - [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) diff --git a/backend/logs/tapo_status_manager/tapo_status_manager.log b/backend/logs/tapo_status_manager/tapo_status_manager.log index 5f2c51726..343e018a1 100644 --- a/backend/logs/tapo_status_manager/tapo_status_manager.log +++ b/backend/logs/tapo_status_manager/tapo_status_manager.log @@ -214,3 +214,12 @@ 2025-06-16 00:50:39 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert 2025-06-16 00:52:30 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert 2025-06-16 00:52:31 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:54:37 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:54:51 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:59:48 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 00:59:50 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 01:00:14 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 01:00:18 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 01:03:50 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 01:03:57 - [tapo_status_manager] tapo_status_manager - [INFO] INFO - TapoStatusManager mit Session-Caching initialisiert +2025-06-16 01:04:10 - [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 49857aaa5..2742bd285 100644 --- a/backend/logs/utilities_collection/utilities_collection.log +++ b/backend/logs/utilities_collection/utilities_collection.log @@ -657,3 +657,21 @@ 2025-06-16 00:52:29 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) 2025-06-16 00:52:31 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert 2025-06-16 00:52:31 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:54:36 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:54:36 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:54:51 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:54:51 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:59:47 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:59:47 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 00:59:50 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 00:59:50 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 01:00:14 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 01:00:14 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 01:00:18 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 01:00:18 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 01:03:49 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 01:03:49 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 01:03:56 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 01:03:56 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) +2025-06-16 01:04:10 - [utilities_collection] utilities_collection - [INFO] INFO - ✅ Utilities Collection initialisiert +2025-06-16 01:04:10 - [utilities_collection] utilities_collection - [INFO] INFO - 🚨 ALLERLETZTE MEGA-Konsolidierung: 12+ Dateien → 1 Datei (90%+ Reduktion) diff --git a/backend/static/sw.js b/backend/static/sw.js index ce0f0eb3e..c83ed22d2 100644 --- a/backend/static/sw.js +++ b/backend/static/sw.js @@ -110,8 +110,29 @@ self.addEventListener('fetch', event => { return; } - // Alle anderen Requests: Network Only - event.respondWith(fetch(request)); + // Alle anderen Requests: Network Only mit Error-Handling + event.respondWith( + fetch(request).catch(error => { + console.warn('🌐 Network request failed:', request.url, error); + // Für kritische Fehler eine Fallback-Response zurückgeben + if (request.destination === 'document') { + return new Response('Service temporarily unavailable', { + status: 503, + statusText: 'Service Unavailable', + headers: { 'Content-Type': 'text/plain' } + }); + } + // Für API-Requests + return new Response(JSON.stringify({ + error: 'Network error', + message: 'Service temporarily unavailable' + }), { + status: 503, + statusText: 'Service Unavailable', + headers: { 'Content-Type': 'application/json' } + }); + }) + ); }); /**