9. Fehlerbehandlung
Wann hätte dein Task laufen sollen?
GraphicAutomator verfügt über ein umfassendes Fehler-Tracking-System.
Was passiert bei einem Fehler?
Wenn ein Task bei der Ausführung fehlschlägt, passieren DREI Dinge automatisch:
1. Fehler-Log in Datenbank
- Fehler wird in
error_logsTabelle gespeichert (tasks.db) - Enthält:
task_id,error_message,error_timestamp - Verknüpft mit dem fehlgeschlagenen Task
2. Visueller Indikator
- Roter Rahmen erscheint auf der Task-Card
- FEHLER Text und Anzahl Fehler in Klammern
- Deutlich sichtbar im rechten Bereich (Task-Übersicht)
- Zeigt auf einen Blick, dass etwas schief gelaufen ist
3. E-Mail-Benachrichtigung
- E-Mail wird an konfigurierte Adresse gesendet
- Enthält Task-Details und Fehlermeldung
- Nur wenn E-Mail konfiguriert ist (siehe 9.3)
Fehler anzeigen in der GUI
Keine Datenbankabfragen nötig
Du musst NICHT in die Datenbank schauen, um Fehler zu sehen:
- Finde den Task mit rotem Rahmen im rechten Bereich
- Klicke auf den 'FEHLER' Text
- Popup-Fenster öffnet sich
- Vollständige Fehlermeldung wird angezeigt
9.2 Error-Logs einsehen
Fehler werden in der tasks.db Datenbank gespeichert und sind direkt in der GUI sichtbar.
Wo Fehler gespeichert werden
Datenbank-Tabelle: error_logs
- Pfad (installierte Version):
%APPDATA%\GraphicAutomator\tasks.db - Pfad (Entwicklung):
[Projektverzeichnis]\tasks.db
Tabellen-Struktur:
id: Eindeutige Fehler-IDtask_id: Verknüpfung zum fehlgeschlagenen Taskerror_message: Vollständige Fehlermeldungerror_timestamp: Zeitpunkt des Fehlers
Fehler in der GUI anzeigen
Direkt in der Benutzeroberfläche
Du musst NICHT direkt in die Datenbank schauen. Fehler sind in der Benutzeroberfläche sichtbar:
- Tasks mit Fehlern zeigen roten Rahmen
- Klicke auf 'FEHLER' Text um Details zu sehen
- Popup zeigt vollständige Fehlermeldung
- Alle Fehler für einen Task werden angezeigt
Häufige Fehler und Bedeutungen
ODBC-Verbindungsfehler
Fehler: "Error executing task: [ODBC Driver error]..."
- → Verbindung zur Gambio-Datenbank fehlgeschlagen
- → Prüfe ODBC-Konfiguration (siehe Kapitel 1.3)
Artikelnummer nicht gefunden
Fehler: "Article [12345] not found in database"
- → Artikelnummer existiert nicht oder ist falsch geschrieben
- → Prüfe Artikelnummern mit Datenbank
Bild-Download fehlgeschlagen
(Derzeit kein expliziter Fehler, Bild wird einfach nicht angezeigt)
- → Bild-URL ungültig oder Server nicht erreichbar
9.3 E-MAIL-BENACHRICHTIGUNGEN
SYSTEM KANN E-MAILS SENDEN: Bei Fehlern oder Task-Abschluss kann automatisch E-Mail gesendet werden. KONFIGURATION: Datei: config.json (muss erstellt werden)
HINWEIS: Die config.json-Datei wird bereits bei der Installation erstellt (siehe Kapitel 2.1, Seite 6). In diesem Abschnitt werden die spezifischen E-Mail-Einstellungen detailliert erläutert. BEISPIEL CONFIG.JSON: { "email_notifications": { "enabled": true, "notify_on_success": false, "notify_on_error": true, "sender_email": "alerts@graphicart.ch", "sender_password": "app_password_hier", "recipients": [ "admin@graphicart.ch", "webmaster@graphicart.ch" ], "smtp_server": "smtp.gmail.com", "smtp_port": 587 } }
PARAMETER: enabled: true/false - Benachrichtigungen ein/aus notify_on_success: E-Mail bei erfolgreichem Task notify_on_error: E-Mail bei Fehler sender_email: Absender-Adresse sender_password: App-Passwort (nicht normales Passwort!) recipients: Liste von Empfängern smtp_server: SMTP-Server-Adresse smtp_port: SMTP-Port (meist 587 oder 465) E-MAIL-INHALT BEI FEHLER: Betreff: GraphicAutomator Error - Task [ID]: [Name] Inhalt: Task ID: 42 Task Name: Weihnachtsaktion 2024 Status: failed Fehler: - Article NIVEA024EA not found in database - Connection timeout for image download Timestamp: 2024-12-08 14:35:22
E-MAIL-INHALT BEI ERFOLG: Betreff: GraphicAutomator Success - Task [ID]: [Name] Inhalt: Task ID: 42 Task Name: Weihnachtsaktion 2024 Status: completed Alle Subtasks erfolgreich ausgeführt. Betroffene Artikel: 15 Timestamp: 2024-12-08 14:35:22 GMAIL APP-PASSWORT ERSTELLEN: Google-Konto öffnen Sicherheit → 2-Faktor-Authentifizierung App-Passwörter Neues App-Passwort erstellen Name: "GraphicAutomator" Generiertes Passwort kopieren In config.json einfügen
WICHTIG - E-MAIL-KONFIGURATION:
Die E-Mail-Adresse für Benachrichtigungen wird während der Installation konfiguriert (siehe Kapitel 1.3, Schritt 2).
Falls du die E-Mail-Adresse später ändern möchtest:
Öffne config.json: Installierte Version: C:\Program Files\GraphicAutomator\config.json Entwicklung: [Projektverzeichnis]\config.json Bearbeite das "email"-Feld: { "email": "vorname(Anfangsbuchstabe).nachname@graphicart.ch" }
Speichere die Datei Starte GraphicAutomator neu (falls läuft)
9.4 HÄUFIGE PROBLEME UND LÖSUNGEN
PROBLEM: VORSCHAU-BUTTON FEHLT SYMPTOM: Kein ⏿-Button auf Subtask-Karte LÖSUNG: Programm neu starten (Python-Cache) PROBLEM: BILD WIRD NICHT ANGEZEIGT SYMPTOM: Graues Icon statt Bild in Vorschau URSACHE: URL ungültig oder nicht erreichbar LÖSUNG: URL im Browser testen Auf Leerzeichen prüfen (werden automatisch encoded) Korrekte Bild-URL verwenden PROBLEM: SUBTASK WIRD NICHT AUSGEFÜHRT SYMPTOM: Promotion erscheint nicht im Shop MÖGLICHE URSACHEN: Aufgabe nicht veröffentlicht (nur Entwurf) LÖSUNG: "Bestätigen" klicken Start-Zeit noch nicht erreicht LÖSUNG: Warten oder Zeit ändern Artikel existiert nicht LÖSUNG: Artikelnummern prüfen Task Scheduler läuft nicht LÖSUNG: Task Scheduler prüfen/starten PROBLEM: PROMOTION WIRD NICHT ENTFERNT SYMPTOM: Nach Ablauf ist Promotion noch sichtbar MÖGLICHE URSACHEN: Entfernungs-Task noch nicht ausgeführt LÖSUNG: Warten (Task Scheduler-Intervall beachten) Entfernungs-Task wurde gelöscht LÖSUNG: Manuell entfernen oder neue Entfernungs-Task erstellen Fehler bei Entfernung LÖSUNG: Error-Logs prüfen PROBLEM: "MARKE WÄHLEN (OPTIONAL)" WIRD GESPEICHERT SYMPTOM: Placeholder-Text als Marke gespeichert URSACHE: Ist NORMAL seit Update - Feld ist jetzt optional LÖSUNG: Kein Problem! System behandelt das korrekt
PROBLEM: DUPLIZIERTE METHODS-FEHLER SYMPTOM: Seltsames Verhalten bei Edit/Delete URSACHE: Wurde bereits behoben (Pre-Demo Cleanup) LÖSUNG: Aktuellste Version verwenden PROBLEM: TASK BLEIBT AUF "RUNNING" SYMPTOM: Status ändert sich nicht zu "completed" URSACHE: Fatal Error während Ausführung LÖSUNG: Error-Logs prüfen Problem beheben Task manuell ausführen: python execute_db_task.py [task_id] PROBLEM: ENCODING-FEHLER BEI UMLAUTEN SYMPTOM: Ä, Ö, Ü werden falsch angezeigt URSACHE: UTF-8 Encoding nicht korrekt LÖSUNG: System verwendet UTF-8 - sollte nicht auftreten Bei Problemen: Datei-Encoding prüfen
Hilfe nötig?