Ich benutze Django mit Fastcgi + Nginx. Ich möchte wissen, wo in diesem Fall die Protokolle (Fehler) gespeichert sind
359
Fehler werden in der Nginx-Protokolldatei gespeichert. Sie können es im Stammverzeichnis der Nginx-Konfigurationsdatei angeben.
error_log /var/log/nginx/nginx_error.log warn;
Unter Mac Os X mit Homebrew wurde die Protokolldatei standardmäßig am folgenden Speicherort gefunden:
/usr/local/var/log/nginx
/opt/nginx/logs/error.log
/var/log/nginx/error.log
. Überprüfen Sie am besten dienginx.conf
Datei und finden Sie dieerror_log
Einstellung.Ich suchte nach einer anderen Lösung.
Standardmäßig wurden auf meinem System (x86 Arch) Fehlerprotokolle gefunden, bevor eine Konfiguration festgelegt wurde:
quelle
--error-log-path
Kompilierungsoption trac.nginx.org/nginx/ticket/147lsof
In den meisten Fällen können Sie (Liste der geöffneten Dateien) verwenden, um geöffnete Protokolldateien zu finden, ohne die Konfiguration zu kennen.Beispiel:
Finden Sie die PID von httpd (dasselbe Konzept gilt für Nginx und andere Programme):
Suchen Sie dann
lsof
mit der PID nach offenen Protokolldateien :Wenn
lsof
nichts gedruckt wird, obwohl Sie erwartet haben, dass die Protokolldateien gefunden werden, geben Sie denselben Befehl mit einsudo
.Sie können ein wenig mehr lesen hier .
quelle
/proc
Dateisystem durchsuchen./proc/${pid}/fd
hat Symlinks zu den geöffneten Dateien, Pipes, Geräten usw.Führen Sie diesen Befehl aus, um Fehlerprotokolle zu überprüfen:
quelle
Meine ngninx-Protokolle befinden sich hier:
Sie können auch überprüfen
nginx.conf
, ob Anweisungen im benutzerdefinierten Protokoll gespeichert sind.laufen
nginx -t
, um Ihre zu findennginx.conf
.Nginx wird normalerweise in
/usr/local
oder eingerichtet/etc/
. Der Server kann so konfiguriert werden, dass auch Protokolle ausgegeben werden/var/log
.Wenn Sie einen alternativen Speicherort für Ihre Nginx-Installation haben und alles andere fehlschlägt, können Sie den
find
Befehl verwenden, um die Datei Ihrer Wahl zu finden.find /usr/ -path "*/nginx/*" -type f -name '*.log'
, wo/usr/
ist der Ordner, aus dem Sie suchen möchten.quelle
Protokolliert den Speicherort auf Linux-Servern
quelle
quelle
Geben Sie diesen Befehl in das Terminal ein
quelle
Fand es hier / usr / local / nginx / logs / *
quelle