Является ли Logrotate тайник где - то на OSX, или есть эквивалент? Это не в /usr/sbin.
Является ли Logrotate тайник где - то на OSX, или есть эквивалент? Это не в /usr/sbin.
Ответы:
Основываясь на ответе Брайана Армстронга, вот кое-что с небольшим объяснением и исправлением. Это обрабатывает журнал, созданный postgres на OSX, установленном Homebrew. Расположен по адресу /etc/newsyslog.d/postgresql.conf:
# logfilename [owner:group] mode count size(KB) when flags [/pid_file] [sig_num]
/usr/local/var/postgres/postgresql.log : 600 2 2048 * J /usr/local/var/postgres/postmaster.pid
Это приведет к повороту файла журнала, когда он достигнет 2 МБ, сохранит 2 архива (в общей сложности используется 6 МБ хранилища) и сжимает архивы bzip2. Он уведомит процесс postgres о повторном открытии файлов журналов после поворота, что необходимо для получения новых записей журнала и для фактического освобождения дискового пространства без перезагрузки компьютера.
Важно отметить, что размер указывается в килобайтах, а не в байтах.
Вы можете проверить файл конфигурации (не затрагивая какие-либо файлы), используя sudo newsyslog -nvv.
Документация по newsyslog находится здесь: http://www.freebsd.org/cgi/man.cgi?newsyslog.conf(5) . Также используется: http://www.redelijkheid.com/blog/2011/3/28/adding-custom-logfile-to-os-x-server-log-rotation.html
OS X имеет несколько способов повернуть / истечь / и т.д. его журналы, в зависимости от типа рассматриваемого журнала:
logrotate. Он настраивается /etc/newsyslog.confи /etc/newsyslog.d/*( как правило, вы должны добавить файлы /etc/newsyslog.d/добавить журналы в список управления)./var/log/asl/. Я пока не совсем понимаю эту систему, но, похоже, эта база данных очищена с помощью aslmanager , который настраивается с помощью /etc/asl.conf./Library/Logs/CrashReporter/), файлы удаляются /etc/periodic/daily/100.clean-logs. Его политики (какие каталоги нужно сканировать и как долго оставлять файлы) настроены /etc/defaults/periodic.conf, но если вы хотите переопределить / изменить их, вы должны создать /etc/periodic.conf.localи поместить свои настройки там.Если то, что вы хотите повернуть, не подходит ни к одной из этих моделей, вы можете добавить свои собственные сценарии /etc/periodic/daily/(которые будут запускаться каждое утро в 3:15), /etc/periodic/weekly/(каждое утро субботы в 3:15) или /etc/periodic/monthly/(сначала каждый месяц в 5:30 утра).
newsyslogавтоматически запускается на OSX, я использую файл конфигурации, подобный этому, /etc/newsyslog.d/rails_apps.confчтобы мои файлы журнала dev обрезались до 5 МБ
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
/Users/barmstrong/code/**/log/*.log 666 0 5242880 * G
Вы можете получить logrotate через Homebrew. Вот мои заметки по настройке.
brew install logrotate
Конфигурационные файлы ротации логов находятся в /usr/local/etc/logrotate.d/
Изменить файл конфигурации. Например, я хотел повернуть некоторые "/var/log/tend_*.log" файлы, которые я представил:
sudo vi /usr/local/etc/logrotate.d/tend.conf
Содержание:
/var/log/tend_*.log {
daily
copytruncate
rotate 3
size 10M
compress
}
sudo logrotate -v -f /usr/local/etc/logrotate.d
sudo brew services start logrotate
sudo brew services restart logrotate
Один из способов сделать это:
http://blog.cantremember.com/logrotate-mac-os-launch-daemon-with-legacy-macport/