Porównaj ceny domen i usług IT, sprzedawców z całego świata

Dlaczego w skrypcie rotacji logów jest sen


Mam problemy z obracaniem dzienników Nginx -
       nginx -s reopen
nie otwiera ponownie pliku dziennika, więc badam ten temat.
Znalazłem ten skrypt w kilku miejscach:
$ mv access.log access.log.0
$ kill -USR1 `cat master.nginx.pid`
$ sleep 1
$ gzip access.log.0 # do something with access.log.0

Moje pytanie brzmi: dlaczego po morderstwie jest sen? Wydaje się to niepotrzebne, ponieważ nawet ponowne otwieranie jest powolne, a gzip nadal nie może skompresować wszystkiego w 1 sekundę?
Czy to robi w ten sposób, jeśli plik jest bardzo mały, więc dane nie zostaną utracone?
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Hibernacja ma na celu całkowite zamknięcie pliku dziennika przed skompresowaniem go za pomocą gzip.
Pamiętaj, że kiedy plik jest otwarty, program zapisuje do niego poprzez deskryptor pliku, nazwa jest teraz nieistotna. Zmiana nazwy pliku ma wpływ tylko na wpis w katalogu. Kiedy wysyłasz sygnał do programu, aby ponownie otworzył plik dziennika, najpierw opróżnia on bufory, następnie zamyka plik, a na koniec ponownie go otwiera. Pozwala na to 1 sekundowe opóźnienie.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się