размер access_log в nginx

12
M
На сайте с 22.02.2007
Offline
161
3680

Как задать ограничение на размер access_log в nginx? А то он растет как на дрожах...

Торрент Трекер Катушка - скачать фильмы (http://katushka.net) | SmartProgress - достижение целей (https://smartprogress.do/) Партнерская программа SmartProgress (https://smartprogress.do/affiliate)
A4
На сайте с 09.08.2007
Offline
55
#1

Есть подозрение, что никак.

Ротируйте логи раз в сутки (mv, killall -USR1 ... )

Настройка nginx и сопутствующего софта на freebsd/debian. Контакт через PM.
M
На сайте с 22.02.2007
Offline
161
#2
Alexei42:
Ротируйте логи раз в сутки (mv, killall -USR1 ... )

Можете написать поподробнее как организовать ротацию

Andreyka
На сайте с 19.02.2005
Offline
822
#3

man logrotated ?

Не стоит плодить сущности без необходимости
Bribone
На сайте с 03.06.2008
Offline
8
#4

у меня так стоит


[root@site]# cat /etc/logrotate.d/nginx
/usr/local/nginx/logs/*log {
daily
rotate 10
missingok
notifempty
compress
sharedscripts
postrotate
[ ! -f /usr/local/nginx/logs/nginx.pid ] || kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
endscript
}
A4
На сайте с 09.08.2007
Offline
55
#5

Я предпочитаю самописные костыли 8)

Такие например:

#!/bin/sh


date=`date +%Y%m%d`
/root/webalizer.pl
cd /var/log/nginx
mkdir archive/$date
for i in `ls -1 | grep log`; do
mv $i archive/$date/$i-$date
done

echo "## sending kill signal .."
kill -USR1 `cat /var/run/nginx.pid`
kill -USR1 `cat /usr/local/php/logs/php-fpm.pid`
echo "## gziping all-recursive.."
gzip -9 -r /var/log/nginx/archive/$date
N
На сайте с 06.05.2007
Offline
419
#6

maxttor, logrotate в приличном линуксе он уже есть. нужно посмотреть на файл /etc/logrotate.conf и каталог /etc/logrotate.d и сделать по аналогии.

следует отметить, что это приложение написал и совершенствует редхат для линукса, именно поэтому в этой теме предложены корявы костыли от российских хостеров.

в бсд, кажется, уже появился newsyslog с похожими возможностями.

Кнопка вызова админа ()
M
На сайте с 22.02.2007
Offline
161
#7

А вот как в logrotate.conf написать команду перезагрузке nginx? Ведь нужно знать pid, а он будет постоянно меняться и каждый раз править logrotate.conf и вносить новый pid ?

D
На сайте с 19.05.2006
Offline
38
#8
Ведь нужно знать pid, а он будет постоянно меняться

kill -HUP `cat /usr/local/nginx/logs/nginx.pid`

M
На сайте с 22.02.2007
Offline
161
#9

После того как задал нужные параметры в logrotate.conf, нужно перезагрузить или запустить logrotate? и нужно ли перезапустить cron? Вобщем что нужно делать после правки конфига?

N
На сайте с 06.05.2007
Offline
419
#10

в пятом посте пример же. предполагается что он сам сработает тк запускается через крон раз в сутки

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий