===== Настройка веб-сервера на базе стека LEMP в Ubuntu Server 14.04 LTS. Часть 13. Ротация логов Nginx =====
Чтобы снизить нагрузку на файловую подсистему веб-сервера можно попробовать сократить уровень ротации логов.
Отредактируем глобальный файл конфигурации **logrotate**
sudo nano /etc/logrotate.conf
# rotate log files weekly
#weekly
maxsize 50M
daily
dateext
# keep 4 weeks worth of backlogs
#rotate 4
rotate 7
# uncomment this if you want your log files compressed
compress
В конфигурации по умолчанию логи nginx подвергаются ротации раз в сутки, отсекая от текущего лога лог за неделю. При этом не обращается внимание на размер лог-файлов.
Изменим ротацию логов **nginx**, чтобы предотвратить создание лог-файлов большого объёма
sudo nano /etc/logrotate.d/nginx
/var/log/nginx/*.log {
maxsize 50M
daily
dateext
missingok
rotate 30
compress
nodelaycompress
notifempty
create 0640 root adm
sharedscripts
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi \
endscript
postrotate
[ -s /run/nginx.pid ] && kill -USR1 `cat /run/nginx.pid`
endscript
}
Добавляем в cron задачу, выполняющуюся каждый час:
sudo nano /etc/cron.d/logrotate-hourly
# Run logrotate every hour
0 * * * * root /usr/sbin/logrotate /etc/logrotate.conf