2016-05-31 13 views
26

Ich debugge einen JSON-Endpunkt und muss interne Serverfehler anzeigen. Mein app/storage/logs Verzeichnis ist jedoch leer und es scheint, dass es keine anderen Verzeichnisse gibt, die für Protokolle im Projekt reserviert sind. Ich habe versucht, das Thema ohne Erfolg zu googeln.Wo befinden sich Holzstämme?

Wie kann ich die Protokollierung aktivieren, wenn sie nicht bereits aktiviert ist und die Protokolle anzeigen?

+0

Können Sie bitte sagen, was ist Ihre aktuelle Einstellung? SO und http-Server. –

+0

Standardmäßig sollte Laravel alles im 'storage'-Ordner protokollieren. Hat Ihre Konfiguration die richtigen Berechtigungen zum Speichern in den Protokollen? Sie können Ihre Apache-Logs in '/ var/log/apache2/error.log' überprüfen - dies wird Ihnen sagen, wenn Sie nicht die richtigen Berechtigungen haben. – James

+2

Welche Methode verwenden Sie für die Protokollierung? 'error_log' würde das Standard-PHP-Protokollverzeichnis verwenden und' Log :: error' würde das standardmäßige Laravel-Protokollverzeichnis verwenden. – Edwin

Antwort

34
  • Stellen Sie sicher, Debug-Modus aktiv ist - entweder APP_DEBUG=true Datei hinzufügen oder eine Umgebungsvariable

  • Log-Dateien sind in Speicher/logs Ordner .env. laravel.log ist der Standarddateiname. Wenn es ein Berechtigungsproblem mit dem Protokollordner gibt, hält Laravel einfach an. Wenn Ihr Endpunkt im Allgemeinen funktioniert, sind Berechtigungen kein Problem.

  • Falls Ihre Anrufe nicht einmal Laravel erreichen oder nicht durch Code-Probleme verursacht werden - überprüfen Sie die Log-Dateien des Web-Servers (überprüfen Sie Ihre Apache/nginx-Konfigurationsdateien, um die Pfade zu sehen).

  • Wenn Sie PHP-FPM verwenden, überprüfen Sie auch seine Protokolldateien (Sie können den Pfad zur Protokolldatei in der PHP-FPM-Pool-Konfiguration sehen).

+0

Die Datei 'laravel.log' ist nicht vorhanden, obwohl die Protokolle in der Standard-PHP-Protokolldir vorhanden sind –

+0

Entweder gibt es keine Ausnahmen/Fehler auf Laravel-Seite oder Laravel hat nicht genug Berechtigungen, um in die Protokolldatei zu schreiben. Was siehst du im HTTP-Client - siehst du überhaupt einen Fehler? –

+0

Nein, im HTTP-Client werden keine Fehler angezeigt. Hast du nicht gerade gesagt, dass der Laravel einfach anhalten würde, wenn es irgendwelche Erlaubnissprobleme gäbe? –

4

Sie sollten das Stammverzeichnis und nicht das App-Verzeichnis überprüfen.

Suchen Sie in $ROOT/storage/laravel.log nicht app/storage/laravel.log, wobei root ist das oberste Verzeichnis des Projekts.

Verwandte Themen