Есть проблема с ротацией логов Squid при помощи newsyslog. Логи ротируются, но после ротации Squid отказывается писать логи до его перезагрузки. В newsyslog.conf:
/var/log/squid/access.log 600 9 * $W1D0 Z /var/run/squid.pid 1
/var/log/squid/cache.log 600 9 * $W1D0 Z /var/run/squid.pid 1Кто-то сталкивался с таким и может решил проблему?
>Есть проблема с ротацией логов Squid при помощи newsyslog. Логи ротируются, но
>после ротации Squid отказывается писать логи до его перезагрузки. В newsyslog.conf:
>
>/var/log/squid/access.log 600 9 * $W1D0 Z /var/run/squid.pid 1
>/var/log/squid/cache.log 600 9 * $W1D0 Z /var/run/squid.pid 1
>
>Кто-то сталкивался с таким и может решил проблему?ротирую стандартно - squid -k rotate без всякого newsyslog.conf, работает нормально на всех версиях сквида. путь и число логов указано cтандартно в конфиге сквида syslog.conf
что это за приблуда newsyslog.conf ? и зачем тебе лишний геморрой?
>ротирую стандартно - squid -k rotate без всякого newsyslog.conf, работает нормально
>на всех версиях сквида. путь и число логов указано cтандартно в
>конфиге сквида syslog.conf
>что это за приблуда newsyslog.conf ? и зачем тебе лишний геморрой?
squid -k rotate ротирует без упаковки. Зачем занимать лишнее место. А newsyslog - стандартная приблуда FreeBSD, которая предназначена для более навороченной ротации
>>Есть проблема с ротацией логов Squid при помощи newsyslog. Логи ротируются, но
>>после ротации Squid отказывается писать логи до его перезагрузки. В newsyslog.conf:
>>
>>/var/log/squid/access.log 600 9 * $W1D0 Z /var/run/squid.pid 1
>>/var/log/squid/cache.log 600 9 * $W1D0 Z /var/run/squid.pid 1
>>
>>Кто-то сталкивался с таким и может решил проблему?Я сталкивался.
В старых версиях squid - 3 ветки ( с версиями могу ошибаться)
можно было ротейтить access.log любым способом. Squid при попытке писать лог обращался к файлу по имени access.log.
В ветке 4 это приводит к ошибке, потому что IMHO Squid теперь обращается к access.log по файловому дескриптеру. В результате каждый понедельник (у меня access.log ротейтился из newsyslog раз в неделю) весь офис ждал моего появления на работе. Победить не победил - ротетинг делаю самим squid_ом, как рекомендованно выше.
>меня access.log ротейтился из newsyslog раз в неделю) весь офис ждал
>моего появления на работе. Победить не победил - ротетинг делаю самим
>squid_ом, как рекомендованно выше.
/var/log/squid/access.log 600 9 * $W1D0 Z /var/run/squid.pid 1
^^^^^^^^^^^^^^^^^^^^
Но почему не срабатывает (см.выше)
По идее newsyslog должен кинуть перед ротацией сквиду SIGHUP
>По идее newsyslog должен кинуть перед ротацией сквиду SIGHUPНа SIGHUP squid лишь перечитывает конфигурацию, а нужен его рестарт в таком случае - оно тебе надо ? У меня 12GB кеша - рестарт squid_a
с валидацией всех объектов в кеше занимает 70 сек. на P-II, 512M RAM.
При этом кеш на отдельном быстром диске...А в чем проблема ротейтить .log из cron_а squid -k logrotate ?
Squid не сжимает отротейченныее файле, но это ты как раз и можешь делать
из newsyslog.
A ja vot takuju figniu nashel na squid faq6.16 I want to use another tool to maintain the log files.
If you set logfile_rotate to 0, Squid simply closes and then re-opens the logs. This allows third-party logfile management systems, such as newsyslog, to maintain the log files.eche ne proboval .. no vot seichas idu bitsia s toi zhe bedoi ;)
>
>>По идее newsyslog должен кинуть перед ротацией сквиду SIGHUP
>
>На SIGHUP squid лишь перечитывает конфигурацию, а нужен его рестарт в таком
>случае - оно тебе надо ? У меня 12GB кеша -
>рестарт squid_a
>с валидацией всех объектов в кеше занимает 70 сек. на P-II, 512M
>RAM.
>При этом кеш на отдельном быстром диске...
>
>А в чем проблема ротейтить .log из cron_а squid -k logrotate ?
>
>Squid не сжимает отротейченныее файле, но это ты как раз и можешь
>делать
>из newsyslog.
rabotaet:
v squid.conf
logfile_rotate 0
i newsyslog.conf
/var/squid/logs/access.log 600 20 * $W6D0 Z /var/squid/logs/squid.pid 30vse rabotaet :)
vsia fishka v tom, chto squid delaet kak by squid -k rotate, no tolko open delaet dlia novogo faila