Re[3]: Ротация логов

Igor Sysoev is at rambler-co.ru
Fri Apr 7 11:30:31 MSD 2006


On Fri, 7 Apr 2006, Дугин Сергей wrote:

> Здравствуйте, Igor.
>
> Вы писали 7 апреля 2006 г., 11:04:09:
>
>> On Fri, 7 Apr 2006, Дугин Сергей wrote:
>
>>>> On Fri, 7 Apr 2006, [windows-1251] Дугин Сергей wrote:
>>>
>>>>> Можно ли добавить новые переменные по аналогии как в http://sysoev.ru/nginx/docs/syntax.html
>>>>>
>>>>> %yy %mm %dd %hh %mm %ss
>>>>>
>>>>> Тогда можно было бы сделать так:
>>>>> access_log /home/user/logs/%yy%mm%dd-access.log main;
>>>>>
>>>>> И ровно в полночь делать
>>>>>
>>>>> kill -1 `cat /usr/local/nginx/logs/nginx.pid`
>>>>>
>>>>> Было бы имхо и удобно и практично.
>>>
>>>> Нет, nginx имеет необходимый и достаточный уровень поддержки ротации логов:
>>>> kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
>>>
>>>> Всё остальное - работа для внешних скриптов.
>>>
>>> Не хотлось бы просто внешними скриптами переименовывать порядка
>>> несколько тысяч логов, проще перезапустить nginx чтобы он начал писать
>>> лог с новым именем.
>
>> А что такого в переименовывании тысяч логов скриптом ?
>> Это же машина делает - она железная. Она сделает это за прау секунд.
>
> Ну давайте начнем с того что сервер сам по сбее нагружен сильно, затем
> ровно в полночь и так запускается много чего, затем если учесть что не
> все знают Си, то например с помощью перла (или того же mv) делается
> все уже не пару секунд, а дольше как результат часть записей новых
> суток попадает в лог от прошедших суток.

Зачем знать Си или перл для того, чтобы крутить логи ? Этих крутилок
уже написано десяток. Основное время в переименовывании файлов уходит
не на перл или Си, а на системные вызовы. nginx их сделает с той же
скоростью и у него будет такой же лаг, как у прочих.


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





More information about the nginx-ru mailing list