В этой статье я приведу пример настройки ротации логов Phabricator.
Посмотрим список логов, их размер, права и владельца:
ls -l /var/log/phabricator/
Например в статье ниже я показывал как создать файлы логов:
Установка Phabricator в Ubuntu
touch /var/log/phabricator/access.log
touch /var/log/phabricator/ssh.log
touch /var/log/phabricator/daemons.log
chown phd:phd /var/log/phabricator/daemons.log
chown vcs-user:vcs-user /var/log/phabricator/ssh.log
chown www-data:www-data /var/log/phabricator/access.log
Создадим файл ротации логов и откроем его в любом текстовом редакторе:
nano /etc/logrotate.d/phabricator
Приведу пример содержимого:
/var/log/phabricator/access.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 640 www-data www-data
}
/var/log/phabricator/daemons.log {
daily
missingok
rotate 3
compress
delaycompress
notifempty
create 640 phd phd
}
daemons.log может содержать очень много информации при включённом debug или при ошибках, по этому я уменьшил время его хранения до 3 копий, также файлы имеют разных владельцев и группу.
Для теста скрипта ротации логов, сделаем тестовый запуск logrotate и проверим файлы логов:
logrotate --force phd
ls -l /var/log/phabricator/
Если у вас веб сервер работает от имени другого владельца или phabricator, то убедимся что вы все верно указали и phabricator может успешно перезапуститься:
cd /home/phd/phabricator
./bin/phd status
./bin/phd restart
service phd status