apacheのログを1時間に1回gzip圧縮する

Twitter ツイート Hatena Bookmark ブックマーク

1時間ごとにrotatelogs使ってapacheのログファイルを吐き出しているんですが、まあやっぱり多くなるんでファイルgzip圧縮することになったわけです。

まあ僕程のイケメンだと下級PHP戦士な訳で、シェルスクリプトなんて滅手に書かない訳です。

というかdateでのフォーマットをどう記述して良いのかがワッカラナーイ状態だったんです…
一応以下のように書いてみたんですが、あっているんですかね?もっと良い方法は沢山あるんだろうナァーと思うとよるも眠れません(´;ω;`)

1
2
3
4
5
6
7
#/bin/sh
# /var/log/httpdの中にaccess_log.2012030515.logみたいな形で時間ごとにaccess_logが保存されてる

TARGET_PATH='/var/log/httpd/'
TARGET_FILE='access_log'.`date --date '1 hour ago' +%Y%m%d-%H.log`

gzip -f $TARGET_PATH$TARGET_FILE
comments powered by Disqus
Built with Hugo
テーマ StackJimmy によって設計されています。