Nginx to potężny serwer proxy na poziomie aplikacji. Niezależnie od tego, czy chodzi o rozwiązywanie problemów, czy analizę, powszechnym wymogiem jest włączenie poziomów dzienników i niestandardowych formatów dzienników dostępu/błędów.
dzienniki błędów
domyślnie rejestrowane są tylko komunikaty z kategorii błędów. Jeśli chcesz włączyć więcej szczegółów, zmodyfikuj nginx.,conf jak:
error_log file
włączenie poziomu debugowania w Linuksie zwykle wygląda tak:
error_log /var/log/nginx/error.log debug;
dzienniki dostępu
dzienniki dostępu i ich format są również dostosowywane w nginx.conf. Domyślnie, jeśli nie podano formatu, zostanie użyty format kombinowany.
access_log file
tak więc najczęstsza składnia w systemie Linux wygląda następująco:
access_log /var/log/nginx/access.log;
co jest odpowiednikiem jawnego określenia połączonego formatu jak poniżej:
Korzystanie z połączonego formatu dziennika może być bardzo wygodne, ponieważ tak wiele narzędzi do analizy dziennika (np., ELK lub splunk) mają wbudowane filtry do spożywania tych dzienników. Jednak, gdy istnieje potrzeba, na przykład gdy Nginx nasłuchuje na wielu portach i musisz wiedzieć, na którym porcie przybył ruch, sensowne jest odejście od połączonego formatu.
na przykład, jeśli chcesz dodać przybywający Port ruchu, użyjesz zmiennej $server_port i Twojego nginx.conf wyglądałby następująco:
inne dostępne zmienne można znaleźć w dokumentacji tutaj.