Czy Logrotate ukrywa się gdzieś na OSX, czy też istnieje odpowiednik? Nie ma go /usr/sbin
.
mac-osx
logging
mac-osx-server
logrotate
Steve Bennett
źródło
źródło
Odpowiedzi:
W oparciu o odpowiedź Briana Armstronga, oto coś z nieco większym wyjaśnieniem i poprawką. Obsługuje dziennik utworzony przez postgres na OSX zainstalowanym przez Homebrew. Znajduje się na
/etc/newsyslog.d/postgresql.conf
:Spowoduje to obrócenie pliku dziennika, gdy osiągnie rozmiar 2 MB, przechowywanie 2 archiwów (łącznie 6 MB używanego miejsca) i kompresowanie archiwów przez bzip2. Powiadomi proces postgres o ponownym otwarciu plików dziennika po ich obróceniu, co jest konieczne, aby uzyskać nowe wpisy dziennika i faktycznie zwolnić miejsce na dysku bez ponownego uruchamiania komputera.
Należy pamiętać, że rozmiar jest w KB, a nie w bajtach.
Możesz przetestować plik konfiguracyjny (bez wpływu na pliki) za pomocą
sudo newsyslog -nvv
.dokumentacja newsyslog znajduje się tutaj: http://www.freebsd.org/cgi/man.cgi?newsyslog.conf(5) . Użyto również: http://www.redelijkheid.com/blog/2011/3/28/adding-custom-logfile-to-os-x-server-log-rotation.html
źródło
OS X ma kilka sposobów obracania / wygaśnięcia / etc swoich dzienników, w zależności od typu danego dziennika:
logrotate
. Jest konfigurowany przez/etc/newsyslog.conf
i/etc/newsyslog.d/*
(ogólnie, należy dodać pliki,/etc/newsyslog.d/
aby dodać dzienniki do listy zarządzania)./var/log/asl/
. Nie do końca rozumiem ten system, ale ta baza danych jest prawdopodobnie usuwana przez aslmanagera , który jest konfigurowany przez/etc/asl.conf
./Library/Logs/CrashReporter/
), pliki są usuwane przez/etc/periodic/daily/100.clean-logs
. Zasady (które katalogi mają być skanowane i czas pozostawienia plików) są skonfigurowane/etc/defaults/periodic.conf
, ale jeśli chcesz je zastąpić / zmienić, powinieneś utworzyć/etc/periodic.conf.local
i umieścić tam swoje dostosowania.Jeśli to, co chcesz obrócić, nie pasuje do żadnego z tych modeli, możesz dodać własne skrypty do
/etc/periodic/daily/
(które będą uruchamiane codziennie o 3:15 rano),/etc/periodic/weekly/
(w każdy sobotni poranek o 3:15 rano) lub/etc/periodic/monthly/
(pierwszy z co miesiąc o 5:30).źródło
newsyslog
działa automatycznie w systemie OSX, używam takiego pliku konfiguracyjnego,/etc/newsyslog.d/rails_apps.conf
aby pliki dziennika deweloperów były przycięte do 5 MBźródło
Możesz uzyskać logrotate przez Homebrew. Oto moje notatki z konfigurowania tego.
zainstalować
brew install logrotate
Skonfiguruj rotację dziennika
Pliki konfiguracji rotacji dziennika są w
/usr/local/etc/logrotate.d/
Edytuj plik konfiguracyjny. Np. Chciałem obrócić niektóre pliki „/var/log/tend_*.log”, które wprowadziłem:
sudo vi /usr/local/etc/logrotate.d/tend.conf
Zawartość:
/var/log/tend_*.log { daily copytruncate rotate 3 size 10M compress }
Przetestuj to
sudo logrotate -v -f /usr/local/etc/logrotate.d
Uruchomić usługę
sudo brew services start logrotate
Uruchom ponownie usługę
sudo brew services restart logrotate
źródło
Jednym ze sposobów na to:
http://blog.cantremember.com/logrotate-mac-os-launch-daemon-with-legacy-macport/
źródło