Как ограничить размер файла журнала доступа nginx и сжать его?

18

Я надеюсь получить некоторое руководство о том, как настроить усечение и gzip'ing в журналах доступа моих доменов. Я заметил, что основные журналы доступа nginx по умолчанию разделяются и сжимаются, но мои индивидуальные журналы доступа продолжают расти.

Это то, что может быть настроено и обрабатывается nginx или чем-то еще в моей системе, которая управляет его основными журналами?

Собака
источник
Использовать logrotate?
Майкл Хэмптон

Ответы:

25

/etc/logrotate.d/nginx

/var/log/nginx/access_log {
    rotate 7
    size 5k
    dateext
    dateformat -%Y-%m-%d
    missingok
    compress
    sharedscripts
    postrotate
        test -r /var/run/nginx.pid && kill -USR1 `cat /var/run/nginx.pid`
    endscript
}
кванты
источник
1
Потрясающие. Logrotate был новым для меня. Имеет смысл сейчас. Благодарность!
собака
man logrotateдля дополнительных деталей.
Сет
1
Мне пришлось сделать следующее, чтобы запустить его с новым sudo logrotate -v -f /etc/logrotate.d/nginx
конфигом
Команда, которая на самом деле вращает журналы: "kill -USR1 /var/run/nginx.pid". Это не убивает процесс Nginx, но вместо этого отправляет ему сигнал, заставляющий его перезагрузить свои файлы журнала. Это приведет к регистрации новых запросов в обновленном файле журнала. Источник
Эдсон Орасио Джуниор,
Может ли кто-нибудь объяснить, что это такое и что это делает?
Esqarrouth