Ich verwende Django mit fastcgi + nginx. Ich möchte wissen, wo die Protokolle (Fehler) in diesem Fall gespeichert werden
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;
Ich suchte nach einer anderen Lösung.
Fehlerprotokolle wurden standardmäßig vor dem Festlegen einer Konfiguration auf meinem System (x86 Arch) gefunden in:
/var/log/nginx/error.log
In den meisten Fällen können Sie lsof
(Liste der geöffneten Dateien) verwenden, um offene Protokolldateien zu finden, ohne die Konfiguration zu kennen.
Beispiel:
Finden Sie die PID von httpd (das gleiche Konzept gilt für Nginx und andere Programme):
$ ps aux | grep httpd
...
root 17970 0.0 0.3 495964 64388 ? Ssl Oct29 3:45 /usr/sbin/httpd
...
Suchen Sie dann nach offenen Protokolldateien mit lsof
mit der PID:
$ lsof -p 17970 | grep log
httpd 17970 root 2w REG 253,15 2278 6723 /var/log/httpd/error_log
httpd 17970 root 12w REG 253,15 0 1387 /var/log/httpd/access_log
Wenn lsof
nichts ausgibt, obwohl Sie erwartet haben, dass die Protokolldateien gefunden werden, geben Sie denselben Befehl mit Sudo
aus.
Sie können etwas mehr hier lesen.
Führen Sie diesen Befehl aus, um Fehlerprotokolle zu überprüfen:
tail -f /var/log/nginx/error.log
Meine Ngninx-Protokolle befinden sich hier:
/usr/local/var/log/nginx/*
Sie können auch Ihren nginx.conf
überprüfen, um zu sehen, ob Sie Anweisungen haben, die in das benutzerdefinierte Protokoll übertragen werden.
führen Sie nginx -t
aus, um Ihren nginx.conf
zu ermitteln.
# in ngingx.conf
error_log /usr/local/var/log/nginx/error.log;
error_log /usr/local/var/log/nginx/error.log notice;
error_log /usr/local/var/log/nginx/error.log info;
Nginx wird normalerweise in /usr/local
oder /etc/
eingerichtet. Der Server kann so konfiguriert werden, dass auch Protokolle nach /var/log
ausgegeben werden.
Wenn Sie einen anderen Speicherort für Ihre Nginx-Installation haben und alles andere fehlschlägt, können Sie den Befehl find
verwenden, um die gewünschte Datei zu finden.
find /usr/ -path "*/nginx/*" -type f -name '*.log'
, wobei /usr/
der Ordner ist, in dem Sie mit der Suche beginnen möchten.
Protokolliert den Speicherort auf Linux-Servern
Apache – /var/log/httpd/
IIS – C:\inetpub\wwwroot\
Node.js – /var/log/nodejs/
nginx – /var/log/nginx/
Passenger – /var/app/support/logs/
Puma – /var/log/puma/
Python – /opt/python/log/
Tomcat – /var/log/Tomcat8
cd /var/log/nginx/
cat error.log
Fand es hier/usr/local/nginx/logs/*
geben Sie das Terminal ein Sudo cat /var/log/nginx/error.log