upstart
zostanie zamknięty (i ponownie) swój plik dziennika, gdy it notices that the file is deleted. Jeśli jednak spojrzysz na what gzip does, zobaczysz, że nie usuwa pliku, dopóki nie zapisze pliku wyjściowego. Oznacza to, że zawsze istnieje warunek wyścigu, w którym linie log mogą zostać utracone, gdy logi linii są wypisywane.
Można wyłączyć ostrzeżenie używając gzip --quiet
, ale tak naprawdę to nie ukrywa faktu, że nadal może luźne wiersze dziennika.
Oznacza to, że delaycompress
nie jest rodzajowy fix do tego. Jest to konkretna poprawka do określonego problemu.
Prawdziwym rozwiązaniem jest to prawdopodobnie kombinacja delaycompress
i jest w stanie wysłać sygnał do procesu. To sprawi, że stan wyścigu zniknie w praktyce (chyba że obrócisz kilka razy na sekundę :)).
See [tutaj] (http://superuser.com/questions/630782/) –