squid access.logは6ヶ月以上古いエントリを削除します。

squid access.logは6ヶ月以上古いエントリを削除します。

Squid はユーザーのサイト訪問ログを生成します。/var/squid/logs/access.log6か月以上経過したアイテムを削除したいと思います。

私は毎週このスクリプトを実行します。私はPerlスクリプトやそのようなものを考えました。

次のようになりますaccess.log

ここに画像の説明を入力してください。

項目は次のように生成されます。

IP - - [15/Oct/2011:02:04:32 -400]

ベストアンサー1

この問題に対する一般的な回避策は、ファイルから古いエントリを削除するのではなく、現在のログファイルに現在のエントリのみを含めるようにログファイル循環を使用することです。

これはすべてlogrotateプログラムによって処理されます。次の構成では、要件を大まかに満たす必要があります。過去6ヶ月間のログエントリをアーカイブし、/var/squid/logs/access.log毎週ファイルを置き換えます。

/var/squid/logs/access.log {
    weekly
    rotate 26
    missingok
    nocreate
    sharedscripts
    postrotate
        test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
    endscript
}

ログファイルのデータに本当に興味がある場合は、そのデータを変更しないでください。

おすすめ記事