%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`
Было бы имхо и удобно и практично.
Непрактично в том плане, что все клиенты будут ночью отваливаться.
Практично делоть SIGUSR1, а логи ротировать чем-нить типа logrotate или
как там его. Это общая практика, так делается для большинства приложений.
Не вижу смысла в памяти сервера держать несколько тысяч процессов
logrotate в течении суток если можно просто перезапустить nginx и
клиенты отваливаться не будут и памяти с экономит и процессору крутить
между собой процессы не нужно будет.
Откуда в памяти возьмутся тысячи процессов logrotate в течение суток ?
Видимо, Сергей логи в pipe пишет...
Один logrotate запускается в полночь, переименовывает файлы,
посылает -USR1 nginx'у, ждёт секунду и потом жмёт файлы, запускает
анализатор, копирует логи на специальную машину, etc.