Gdzie mogę znaleźć dzienniki błędów nginx, używając fastcgi i django


Odpowiedzi:


481

błędy są przechowywane w pliku dziennika nginx. możesz to określić w katalogu głównym pliku konfiguracyjnego nginx.

error_log  /var/log/nginx/nginx_error.log  warn;

W systemie Mac OS X z Homebrew plik dziennika został domyślnie znaleziony w następującej lokalizacji:

/usr/local/var/log/nginx

11
Może to zależy od wersji, ale mój dziennik jest w środku:/opt/nginx/logs/error.log
— jmarceli

49
w systemie Mac OS X z homebrew: / usr / local / var / log / nginx. patrz odpowiedź
— Félix Gagnon-Grenier

11
Na Ubuntu mam to /var/log/nginx/error.log. Najlepiej sprawdzić nginx.confplik i znaleźć error_logustawienie.
— MarthyM,

Gdzie znalazłeś te informacje?
— etiennejcharles

300

Szukałem innego rozwiązania.

Dzienniki błędów, domyślnie, przed jakąkolwiek konfiguracją, w moim systemie (Arch x86) znaleziono:

/var/log/nginx/error.log

1
Najwyraźniej można to skonfigurować tylko w czasie kompilacji za pomocą --error-log-pathopcji kompilacji trac.nginx.org/nginx/ticket/147
— Michael Berkowski

na Raspberry Pi3 jest to lokalizacja
— Bludau Media

161

W lsofwiększości przypadków można użyć (listy otwartych plików), aby znaleźć otwarte pliki dziennika bez znajomości konfiguracji.

Przykład:

Znajdź PID httpd (ta sama koncepcja dotyczy nginx i innych programów):

$ ps aux | grep httpd
...
root     17970  0.0  0.3 495964 64388 ?        Ssl  Oct29   3:45 /usr/sbin/httpd
...

Następnie wyszukaj otwarte pliki dziennika za lsofpomocą 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

Jeśli lsofnic nie drukuje, mimo że spodziewałeś się, że pliki dziennika zostaną znalezione, wydaj to samo polecenie, używając sudo.

Możesz przeczytać więcej tutaj .


4
fajna sztuczka do zapamiętania .. nie trzeba już zgadywać, gdzie mogą być pliki dziennika
— Yo Ludke,

12
nauczyło mnie to łowić; Chciałbym móc głosować więcej
— Kurttheviking

+1 Za odpowiedź, jak wyglądać. Szukałem dzienników z innej instalacji nginx i nie było to najwyższej odpowiedzi.
— Robert Dundon,

możesz zaczepić się o podobne dane na /procsystemie Linux w systemie plików. /proc/${pid}/fdma dowiązania symboliczne do otwartych plików, rur, urządzeń itp.
— Avindra Goolcharan,


39

Moje dzienniki ngninx znajdują się tutaj:

/usr/local/var/log/nginx/*

Możesz także sprawdzić, nginx.confczy masz jakieś zrzuty do dziennika niestandardowego.

biegnij, nginx -taby znaleźć nginx.conf.

# 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 jest zwykle konfigurowany w /usr/locallub /etc/. Serwer można również skonfigurować do zrzutowania dzienników /var/log.

Jeśli masz alternatywną lokalizację instalacji nginx i wszystko inne zawiedzie, możesz użyć findpolecenia, aby zlokalizować wybrany plik.

find /usr/ -path "*/nginx/*" -type f -name '*.log', gdzie /usr/jest folder, od którego chcesz rozpocząć wyszukiwanie.


Dzienniki będą tutaj, jeśli zainstalowałeś Nginx z Homebrew.
— Sridhar Sarnobat

9

Lokalizacja logów na serwerach Linux

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


2

wpisz to polecenie w terminalu

sudo cat /var/log/nginx/error.log

1
To nie jest odpowiedź i powinien być komentarzem. Gdy zdobędziesz wystarczającą reputację, będziesz mógł komentować.
— mrun

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.