ПРОЕКТЫ 


  АРХИВ 


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[4]: Ротация логов



On Fri, 7 Apr 2006, Дугин Сергей 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 их сделает с той же
скоростью и у него будет такой же лаг, как у прочих.

А есть разница между переименовыванием и созданием нового файла?

Есть, переименование - rename()/open(). Создание - open().
Но nginx помимо создания нового файла ещё вызывает chown() и chmod().
В общем, разница будет гомеопатической.


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



 




Copyright © Lexa Software, 1996-2009.