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
|