Страница 1 из 1

apache ротация логов

Добавлено: 2008-11-21 13:20:55
ev
решил озадачиться ротацией логов, нашел несколько вариантов:
1. newsyslog - не очень удобно туда добавлять кучу вирт.хостов, да и перезапуск апача не есть гуд
2. апачевский rotatelogs - на большом кол-ве вирт.хостов много процессов висит в памяти (для каждого хоста)

как еще можно грамотно решить с ротацией?

Re: apache ротация логов

Добавлено: 2008-11-21 13:30:53
zingel
скриптом

Re: apache ротация логов

Добавлено: 2008-11-21 13:34:02
zg
вроде апач умеет это делать, правда не знаю как именно и с какой версии.

Но если хочется лисапедов с кадратными колёсами, то поищи по форуму, я где-то скрипт уже катал, который даже рабтал...

Re: apache ротация логов

Добавлено: 2008-11-21 13:52:56
ev
Но если хочется лисапедов с кадратными колёсами, то поищи по форуму, я где-то скрипт уже катал, который даже рабтал...
лисапед уже есть :)
хотелось бы чего-нить красивого...

Re: apache ротация логов

Добавлено: 2008-11-21 15:02:51
zg
ev писал(а):хотелось бы чего-нить красивого...
поиск рулит :smile: http://httpd.apache.org/docs/2.0/progra ... elogs.html

Re: apache ротация логов

Добавлено: 2008-11-21 16:00:13
ev
про это я написал в п.2 ;)

Re: apache ротация логов

Добавлено: 2008-11-21 16:45:52
zg
ev писал(а):
про это я написал в п.2 ;)
ну и чего ж тебе тада нада? :smile:

Re: apache ротация логов

Добавлено: 2008-11-21 20:36:04
ev
ну и чего ж тебе тада нада?
яж вроде написал - не хочется чтобы плодилось куча процессов rotatelogs в памяти
я понял бы если один, но когда для каждого вирт.хоста - это перебор

Re: apache ротация логов

Добавлено: 2008-11-21 21:23:28
zg
http://forum.lissyara.su/viewtopic.php?p=77564 внимательно читаем и делаем выводы

Re: apache ротация логов

Добавлено: 2008-11-21 21:47:32
LMik
ev писал(а):решил озадачиться ротацией логов, нашел несколько вариантов:
1. newsyslog - не очень удобно туда добавлять кучу вирт.хостов, да и перезапуск апача не есть гуд
2. апачевский rotatelogs - на большом кол-ве вирт.хостов много процессов висит в памяти (для каждого хоста)

как еще можно грамотно решить с ротацией?
newsyslog маски понимает

Код: Выделить всё

/usr/local/www/vhosts/log/*.log         600  10    10000  *   JCWg   /var/run/httpd.pid
Перезапуска апача не происходит, просто -1 шлется.

Re: apache ротация логов

Добавлено: 2008-11-21 21:50:41
ev
внимательно читаем и делаем выводы
это я уже видел, этож лисапед - у меня есть почти такой ;)
могу ошибиться... но при таком варианте теряются строки лога, которые были выданы апачем после удаления лога и до создания пустого
у меня есть идея как это подправить, но была надежда - а вдруг есть готовый вариант
newsyslog маски понимает
маски каталогов тоже?
хотя с масками каталогов можно попасть и обработать совсем не те логи :(

Re: apache ротация логов

Добавлено: 2008-11-21 22:05:11
zg
ev писал(а):могу ошибиться... но при таком варианте теряются строки лога, которые были выданы апачем после удаления лога и до создания пустого
могут и будут. То что скрипт недоработан, я вполне понимаю. Просто я намекал, что через авк можно получить список логов, зная список логов их можно ротейтить.

Просто переместить лог нельзя, поскольку указатель на него открывается при старте сервера, блокировать вроде как тоже нельзя (хотя не проверял). И пока apachectl (и сам httpd) не поддерживает команду rotate, никаким законным способом не добиться нормальной ротации логов.

Re: apache ротация логов

Добавлено: 2010-12-02 15:11:09
dmtr
newsyslog маски понимает

Код: Выделить всё

/usr/local/www/vhosts/log/*.log         600  10    10000  *   JCWg   /var/run/httpd.pid
Перезапуска апача не происходит, просто -1 шлется.
graceful-restart апача:

Код: Выделить всё

/usr/local/www/vhosts/log/*.log         600  10    10000  *   J  /var/run/httpd.pid   30
http://www.freebsddiary.org/rotatelogs.php

и эта, include во всех конфигах работает? в newsyslog.conf тоже можно инклудить?

Re: apache ротация логов

Добавлено: 2010-12-07 14:32:00
dmtr
graceful-restart апача:

Код: Выделить всё

/usr/local/www/vhosts/log/*.log         600  10    10000  *   JG  /var/run/httpd.pid   30
флаг G нужен чтобы маска * сработала