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
 
 
 |