ПРОЕКТЫ 


  АРХИВ 


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: Переоткрытие ло г-файлов (баг)



Igor Sysoev пишет:
> On Sat, May 17, 2008 at 03:44:51PM +1100, Konstantin G. wrote:
> 
>> И ещё один баг заметил:
>>
>> У меня два рабочих процесса. После посылки главному процессу сигнала
>> USR1 иногда бывает так, что один из процессов продолжает писать логи в
>> старый файл.
>> Подозреваю, что этот процесс во время принятия сигнала USR1 обрабатывал
>> запрос.
>> __
>> version: nginx/0.5.35
>> OS - линукс.
> 
> Что в старом error_log в районе посылки сигнала ?
> Лог должен вести на уровне notice. Должно быть что-то вроде:
> 
> 2008/05/17 00:00:00 [notice] 42780#0: signal 30 (SIGUSR1) received, reopening 
> logs
> 2008/05/17 00:00:00 [notice] 42780#0: reopening logs
> 2008/05/17 00:00:00 [notice] 42783#0: reopening logs
> 2008/05/17 00:00:00 [notice] 42782#0: reopening logs

Хм, вообще в логах никаких нотисов нет.

./nginx -V
nginx version: nginx/0.5.35
built by gcc 3.2 20020903 (Red Hat Linux 8.0 3.2-7)
configure arguments: --prefix=/opt/nginx --user=arsvest --group=arsvest
--with-http_stub_status_module --without-http_charset_module
--without-http_ssi_module --without-http_autoindex_module

Попробовал передать сигнал непосредственно рабочим процессам:
kill -USR1 26814 26815

в error_log появилось следующее:
2008/05/17 18:09:55 [info] 26814#0: sigtimedwait() failed (4:
Interrupted system call)
2008/05/17 18:09:55 [info] 26815#0: sigtimedwait() failed (4:
Interrupted system call)

При посылке этого сигнала главному процессу в логах абсолютно ничего не
появляется.
На всякий случай: ядро - 2.4.24



 




Copyright © Lexa Software, 1996-2009.