PrestaShop Debug-Modus und Logs: wo Sie die Fehlermeldung lesen
Den Debug-Modus in PrestaShop schalten Sie unter Erweiterte Einstellungen > Leistung oder in der Datei config/defines.inc.php ein. Er behebt selbst nichts. Er zeigt die Fehlermeldung statt einer leeren Seite. Bevor Sie ihn einschalten, sehen Sie in das Protokoll unter Erweiterte Einstellungen > Logs. Die Fehlermeldung steht oft schon dort, mit Datum und Modulname.
Autor: Das TellMyShop-Team. Ein Ratgeber für Betreiber von PrestaShop-Shops: die Ursache, die Lösung von Hand und dieselbe Arbeit im Gespräch mit dem Chat.
Zuletzt aktualisiert: · 5 Min. Lesezeit
Wo speichert PrestaShop die Fehlermeldung?
An vier Stellen, und jede sieht etwas andere Fehler.
| Ort | Wo Sie ihn finden | Was er enthält | Wann Sie nachsehen |
|---|---|---|---|
| PrestaShop-Protokoll | Erweiterte Einstellungen > Logs | Einträge von PrestaShop und Modulen mit Datum und Schweregrad | immer, als Erstes |
| Debug-Modus | Erweiterte Einstellungen > Leistung oder config/defines.inc.php | die vollständige Meldung mit Datei und Zeile, direkt auf der Seite | wenn die Seite leer ist oder einen Fehler 500 zeigt |
| Log-Dateien auf dem Server | der Ordner var/logs | Fehler, die die Symfony-Ebene schreibt | wenn das Back-Office nicht funktioniert oder der Fehler das Back-Office betrifft |
| Fehlerprotokoll des Hostings | Hosting-Panel, meist „Error Log“ oder „PHP-Logs“ | PHP-Fehler, auch solche, die PrestaShop nicht mehr speichern konnte | wenn das Protokoll im Back-Office leer ist |
Es gibt auch eine fünfte Stelle, die Browser-Konsole. Sie öffnen sie mit F12. Sie zeigt Skriptfehler, etwa wenn ein Button nichts tut und die Shop-Logs leer sind. Eine Beschreibung der Log-Seite finden Sie in der PrestaShop-Dokumentation.
Wie schalten Sie den Debug-Modus sicher ein?
So kurz wie möglich, am besten auf einer Testkopie des Shops.
- Prüfen Sie das Protokoll. Wenn die Fehlermeldung schon dort steht, brauchen Sie den Debug-Modus nicht.
- Schalten Sie das Debugging im Back-Office ein. Erweiterte Einstellungen > Leistung, der Schalter für den Debug-Modus. Diese Seite beschreibt die Dokumentation zur Leistung.
- Wenn das Back-Office nicht funktioniert, nutzen Sie die Datei. Ändern Sie in
config/defines.inc.phpden Wert_PS_MODE_DEV_vonfalseauftrue. Das beschreibt die Entwicklerdokumentation. - Lösen Sie den Fehler erneut aus. Öffnen Sie die Seite, die abstürzt, und kopieren Sie die ganze Meldung: den Text, die Datei und die Zeilennummer.
- Schalten Sie das Debugging aus. Gleich nach dem Kopieren der Meldung. Der Debug-Modus zeigt jedem Besucher technische Details.
- Leeren Sie den Cache. Erweiterte Einstellungen > Leistung, der Button oben rechts.
Weitere Schalter, auch das Abschalten von Overrides und Nicht-PrestaShop-Modulen für die Dauer eines Tests, beschreibt der Leitfaden von icomSEO zum Debug-Modus (auf Polnisch).
Wie lesen Sie einen Protokolleintrag?
Achten Sie auf drei Dinge: den Schweregrad, den Dateipfad und das Datum des ersten Auftretens.
Der Schweregrad sagt Ihnen, wie dringend es ist. Eins ist eine Information, zwei eine Warnung, drei ein Fehler und vier ein schwerwiegendes Problem, das meist die Seite stoppt. Der Dateipfad sagt Ihnen, wessen Fehler es ist. Ein Fragment wie modules/modulname zeigt auf ein Modul, themes/ auf das Theme und override/ auf einen Override, den ein Modul hinterlassen hat. Das Datum des ersten Auftretens sagt Ihnen, was sich damals geändert hat. Ein Fehler, der eine Viertelstunde nach einem Modul-Update begann, kommt meist von diesem Modul.
Kopieren Sie den Eintrag vollständig, wenn Sie ihn an den Modulautor oder einen Entwickler schicken. Fügen Sie die PrestaShop-Version, die PHP-Version und eine Beschreibung hinzu, was Sie klicken, bevor der Fehler erscheint. Wenn der Shop schon einen Fehler 500 zeigt, gehen Sie zum Plan im Artikel PrestaShop Fehler 500 über. Wenn das Protokoll auf ein Modul zeigt, sehen Sie nach, wie Sie ein PrestaShop-Modul deaktivieren, ohne seine Daten zu verlieren.
Welche Meldungen sehen Sie am häufigsten?
Ein paar Arten von Meldungen kehren in PrestaShop-Shops immer wieder, und jede gibt einen Hinweis, wen Sie um Hilfe bitten.
| Fragment der Meldung | Was es meist bedeutet | Wer helfen kann |
|---|---|---|
| Allowed memory size exhausted | das Skript brauchte mehr Speicher, als der Server erlaubt | Ihr Hoster |
| Class not found | eine Klassendatei fehlt, oft nach dem Entfernen eines Moduls oder bei einem alten Override | ein Entwickler |
| Undefined array key oder Undefined index | das Modul ist nicht an eine neuere PHP-Version angepasst, meist eine Warnung | der Modulautor |
| SQLSTATE | ein Fehler in einer Datenbankabfrage, oft aus einem Modul | der Modulautor oder ein Entwickler |
| Unable to load template | eine Template-Datei fehlt im Theme oder in einem Modul | der Theme-Autor oder ein Entwickler |
Fügen Sie die Meldung vollständig in Ihren Bericht ein. Kürzen oder umschreiben Sie sie nicht, denn der Autor sucht nach dem genauen Text.
Wie gehen Sie das Protokoll mit dem Chat durch?
Sie bitten um Einträge aus einem gewählten Zeitraum, und Ihr Chat (Claude oder ChatGPT) gruppiert wiederkehrende Fehler und erklärt sie in einfacher Sprache. Er nennt auch das Modul, auf das der Fehler am wahrscheinlichsten zeigt.
Sie: Hol die Fehler und schwerwiegenden Probleme seit Montag aus dem Protokoll, gruppiere sie nach Meldung und sag mir, auf welches Modul sie zeigen.
Ihr Chat: Seit Montag gibt es 52 Einträge auf Fehlerstufe und keine schwerwiegenden Probleme. Drei Gruppen:
41 Einträge vom Bewertungsmodul, immer auf der Produktseite, seit Dienstagmorgen.
9 Einträge vom Newsletter-Modul beim Eintragen einer Adresse, zeitlich verteilt.
2 Einträge zu einem fehlenden Bild in der Kategorie Laternen, ein kleines Inhaltsproblem.
Die erste Gruppe ist am dringendsten. Sie begann nach dem Update des Bewertungsmoduls.
Der Debug-Modus ist aus, und so sollte es bleiben.
Das Lesen des Protokolls funktioniert im kostenlosen TellMyShop Free, ohne Kauf. Standardmäßig umfasst es die letzten 7 Tage und bis zu 200 Einträge auf einmal. E-Mail-Adressen, Telefonnummern und IP-Adressen werden maskiert. Die technische Prüfung des Shops sagt Ihnen auch, ob jemand den Debug-Modus angelassen hat. Eine fertige Anfrage finden Sie im Anwendungsfall Fehlermeldungen nach einem Modul-Update verstehen.
Dateien aus dem Ordner var/logs und das Fehlerprotokoll des Hostings liest der Chat nicht. Wenn der Shop gar nicht antwortet, funktioniert auch das TellMyShop-Modul nicht, weil es im Shop läuft.
Fragen und Antworten
Wo sind die Logs in PrestaShop?
An drei Stellen. Das Protokoll im Back-Office finden Sie unter Erweiterte Einstellungen > Logs, es zeigt Einträge, die PrestaShop und Module gespeichert haben. Log-Dateien liegen auf dem Server im Ordner var/logs. PHP-Fehler, die PrestaShop nicht mehr speichern konnte, stehen im Fehlerprotokoll in Ihrem Hosting-Panel.
Kann ich den Debug-Modus eingeschaltet lassen?
Lassen Sie ihn nicht an. Der Debug-Modus zeigt jedem Besucher technische Details, auch Dateipfade auf dem Server. Außerdem schaltet er einen Teil des Caches ab, sodass der Shop langsamer läuft. Schalten Sie ihn für die Diagnose ein, am besten auf einer Testkopie, und gleich danach wieder aus.
Was bedeuten die Schweregrade im PrestaShop-Protokoll?
Einträge haben vier Stufen. Eins ist eine Information, zwei eine Warnung, drei ein Fehler und vier ein schwerwiegendes Problem, das meist die Seite stoppt. Im Alltag schauen Sie auf die Stufen drei und vier. Warnungen lesen Sie, wenn sich etwas seltsam verhält und das Protokoll keine Fehler hat.
Wie bekomme ich Fehlermeldungen per E-Mail?
Unter Erweiterte Einstellungen > Logs legen Sie den Mindestschweregrad fest, ab dem PrestaShop dem Administrator eine E-Mail schickt. Setzen Sie ihn auf Fehler oder schwerwiegende Probleme, also drei oder vier. Auf Warnstufe füllt sich Ihr Postfach schnell, und die wichtigen Meldungen gehen zwischen den kleinen unter.
Liest der Chat die Server-Logs?
Der Chat liest das PrestaShop-Protokoll aus dem Back-Office, standardmäßig für die letzten 7 Tage und bis zu 200 Einträge auf einmal. E-Mail-Adressen, Telefonnummern und IP-Adressen werden in den Ergebnissen maskiert. Dateien aus var/logs und das Fehlerprotokoll des Hostings liest der Chat nicht. Prüfen Sie sie in Ihrem Hosting-Panel oder fragen Sie Ihren Hoster danach.
PrestaShop ist eine eingetragene Marke der PrestaShop SA. Claude ist eine Marke der Anthropic PBC. ChatGPT und OpenAI sind Marken von OpenAI. TellMyShop ist mit diesen Unternehmen nicht verbunden.