ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: log rotation



On Wed, 30 Mar 2005, Sergey A. Osokin wrote:

On Wed, Mar 30, 2005 at 12:06:06AM +0400, Anton V. Yuzhaninov wrote:
Здравствуйте,

Как правильно вращать логи?
Делаю:
mv nginx-error.log  nginx-error.log.0

потом kill -USR1 `cat /var/run/nginx.pid`

а логи продолжают писаться в nginx-error.log.0

killall -USR1 nginx тоже не помогает.

nginx-0.1.25
FreeBSD 5.3-STABLE

Для ротации журналов в ОС FreeBSD предусмотрен механизм newsyslog(8).
В /etc/newsyslog.conf добавляем вот такие (или подобные) строки:
/var/log/nginx-access.log               644  3     *    @T00  Z 
/var/run/nginx.pid 30
/var/log/nginx-error.log                644  3     *    @T00  Z 
/var/run/nginx.pid 30

Описание указанных строк вы можете найти в newsyslog(8).

Дело не в этом. Если вариант mv/USR1 не работает, то newsyslog тоже
не поможет. Рабочие процессы продолжают работать со старым логом, если
они не смогли открыть новый. Как правило, ошибка "Permission denied".
В этом случае у пользователя, под которым работает рабочий процесс,
нет прав на чтение - r, или поиск - x (чего именно сейчас не скажу) на один
из каталогов в пути к логу. На сам лог все права есть - это обеспечивает
основной процесс.


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.