/ / Czy źle jest zawsze uruchamiać debugowanie nginx? - nginx

Czy źle jest uruchamiać nginx-debug? - nginx

Czytam sekcja debugowania NGINX i mówi, aby włączyć debugowanie, musiszskompiluj lub uruchom nginx w określony sposób, a następnie zmień opcję konfiguracji. Nie rozumiem, dlaczego jest to proces dwuetapowy i wnioskuję, że to znaczy, „nie chcesz długo uruchamiać nginx w trybie debugowania, nawet jeśli nie rejestrujesz wiadomości debugowania, ponieważ jest zły „.

Ponieważ opcja konfiguracji (error_log) już ustawia poziom rejestrowania, ale nie mogęzawsze kompiluj / uruchamiaj w trybie debugowania i zmieniaj konfigurację, gdy chcę zobaczyć dzienniki poziomu debugowania? Jakie są wady tego? Czy nginx będzie działał wolniej, jeśli skompiluję / uruchomię go w trybie debugowania, nawet jeśli nie rejestruję komunikatów debugowania?

Odpowiedzi:

1 dla odpowiedzi № 1

Po pierwsze, aby uruchomić Nginx podczas debugowania, musisz uruchomićplik binarny debugowania nginx, a nie normalny nginx, jak opisano w dokumentach nginx. Jeśli tego nie zrobisz, nie będzie to ważne, jeśli ustawisz dziennik błędów na debugowanie, ponieważ nie zadziała. Jeśli chcesz się dowiedzieć CZEMU jest to proces dwuetapowy, nie mogę powiedzieć, dlaczego dokładnie podjęto taką decyzję.

Debuguje wiele dzienników, informacji o FD i tak dalejo wiele więcej, więc tak, może spowolnić twój system, na przykład, ponieważ musi zapisywać wszystkie dzienniki. Na serwerze deweloperskim, w porządku, na serwerze produkcyjnym z setkami lub tysiącami żądań, możesz zobaczyć, w jaki sposób dyskowe operacje we / wy wygenerowane przez ten dziennik mogą spowodować spowolnienie serwera i zablokowanie innych usług w oczekiwaniu na darmowe dysk I / O. Również miejsce na dysku może szybko się skończyć.

Ponadto, jaki byłby powód, aby zawsze uruchamiać w trybie debugowania? Czy jest coś wyjątkowego, czego szukasz w tych logach? Chyba próbuję dowiedzieć się, dlaczego chcesz.

I może warto wspomnieć, że jeśli chcesz uruchomić debugowanie w środowisku produkcyjnym, przynajmniej użyj debug_connection dyrektywy i rejestruj tylko niektóre adresy IP.