close
一直以來, 都是用 newsyslog 來做 squid 的 log ratation.
newsyslog 沒特別指定的話, 在 mv log 之後是送 SIGHUP 出去,
而 squid 在收到 SIGHUP 的時候會做 reconfigure.
然後就會有一小段時間不接客 @@
因為問題不大, 所以一直沒認真找正解,
後來發現正確的作法是送SIGUSR1(30)才對,
所以就把 newsyslog.conf 改成送 SIGUSR1, 結果變成跑出一個 access.1.gz 以及一個 access.0
會造成的這樣的原因是因為 squid 收到 SIGUSR1 就會自己 rotate 了, 並不只是單純 reopen log file :P
所以正解之一應該是cron做類似以下的動作:
0 0 * * * /usr/bin/killall -30 squid
然後搭配一個 find 去砍掉太久的 log
不過若希望壓縮..那就得把squid.conf的logfile_rotate設成0,
然後讓newsyslog去處理log rotate and 壓縮, 並送SIGUSR1(30)給squid
全站熱搜