ПРОЕКТЫ 


  АРХИВ 


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]

Nginx, Logrotate & Webalizer increment


  • To: nginx-ru@xxxxxxxxx
  • Subject: Nginx, Logrotate & Webalizer increment
  • From: Vladislav <tvword@xxxxxxxxx>
  • Date: Sun, 31 Jan 2010 13:22:08 +0200
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:content-type :content-transfer-encoding; bh=HDLCXsx2EG0oWG5eCXGZ3sDPLbyFp0UF82qril5NT8w=; b=q1Sqr2q7ecKXRtNvpf823zcnb85utPdUepN+vPzhY5HDRcHvI1PxG7UXfTDePFeDuh 1iJOxUEUz4+R3SPiT8uV1kQGtUqHf5w88UuaUY32XdYNbg8g4qQ9/gE471NPsqKS4L1R IMMtQV/zYEWifJ8JtoDK/dYtwRJMv1okwGXGk=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=W6fOpnJhjhBqSAfQwgC/leazGk5CCbyebt/XNKtEQX5Us7m2x+D0XQMCM1WgjRJLsZ LSpMkjkQf+I+ESzG1NNNRKVTyvYSNuWBvEVNBDnregvEGmX6PHJdJUiyqbW7Ak3KgnbQ OaxQr+JIWlouAB3PJEkBNkdEfufmTWw2o6iCk=

Здесь http://www.lexa.ru/nginx-ru/msg13044.html нашел описание конфига Nginx для Logrotate.

Рассматривается конфигурация
/var/log/nginx/*log {
    daily
    rotate 9
    missingok
    notifempty
    compress
    sharedscripts
    postrotate
        [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
    endscript
}

Даны пояснения:

Лог-файлы нужно переименовать, а затем послать сигнал USR1 главному процессу. Он откроет заново все текущие открытые файлы и назначит им в качестве владельца
непривилегированного пользователя, под которым работают рабочие процессы.
После успешного открытия главный процесс закрывает все открытые файлы
и посылает сообщение о переоткрытии файлов рабочим процессам.
Они также открывают новые файлы и сразу же закрывают старые.
В результате старые файлы практически сразу же готовы
для дальнейшей обработки, например, их можно сжимать.
Вопрос. Немного не понятно, кто в этом случае очищает log-файл, например access.log? Nginx или Logrotate?

Еще задача. Перед ротация логов, по ним нужно пройтись webalizer'ом, причем с инкрементной обработкой логов.
У меня получился такой конф.файл -
/var/log/ng/access.log {
        rotate 10
        size=10M
        missingok
        notifempty    # не обрабатывать пустые файлы
        compress
        nodelaycompress
        nocreate
        sharedscripts # prerotate/postrotate выполняются только 1 раз
        prerotate
/usr/bin/webalizer endscript
        postrotate
        [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
        endscript
}
Стоит параметр nocreate. Т.е не создавать новый файл access.log?
Создаст ли его nginx через команду kill -USR1 `cat /var/run/nginx.pid ?




_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.