Używam php5 FPM z APC jako opcode i pamięć podręczną aplikacji. Jak zwykle, loguję błędy php do pliku.Jak skonfigurować logrotate za pomocą php logów
Ponieważ to staje się dość duże, próbowałem skonfigurować logrotate. Działa, ale po obrocie, php kontynuuje logować się do istniejącego pliku dziennika, nawet gdy jest zmieniona. W rezultacie skrypt scripts.log jest plikiem 0B, a scripts.log.1 nadal się rozwija.
Myślę (nie próbowałem), że uruchomienie przeładowania php5-fpm w postrotate może rozwiązać ten problem, ale to wyczyściłoby moją pamięć podręczną APC za każdym razem.
Czy ktoś wie, jak to działa poprawnie?
Po obróceniu logów, myślę, że musisz ponownie uruchomić FPM. Lub musisz powiedzieć logrotate, aby faktycznie utworzyć nowy i-węzeł i skrócić istniejący plik. W przeciwnym razie FPM będzie kontynuował zapisywanie do i-logów plików, więc zmiana nazwy samego pliku nie pomoże (co opisałeś jako zachowanie w swoim pytaniu). – hakre
copytruncate to tylko twoje życie ratunkowe. – Satish