clonosplitしたapacheログを圧縮するスクリプト
スポンサードリンク
Linuxでapacheのログをcronosplitで分割しているとき、たとえば
CustomLog "|/usr/sbin/cronolog /var/log/httpd/daily/%Y/%m/access_log.%Y%m%d" combined
などしているときの、月が変わったタイミングで実行すると圧縮してくれるスクリプトを作ってみたがシェルスクリプトってよくわかんないのであまりまじめに参考にしないでね。
cronosplitで、ログは /var/log/httpd/daily/2010/09 あたりに、月ごとに入っているっていう想定。
#!/bin/sh
SYSTEM_MONTH=`date --date '1 month ago' '+%Y/%m'`;
SYSTEM_MONTH2=`date --date '1 month ago' '+%Y%m'`;
LOG_BASEDIR='/var/log/httpd/daily'
LOG_DIR="${SYSTEM_MONTH}"
ARCHIVE="${SYSTEM_MONTH2}.tbz"
cd ${LOG_BASEDIR}
echo "ベースディレクトリ :${LOG_BASEDIR}"
echo "Apacheログ格納ディレクトリ:${LOG_DIR}"
echo " ↓"
echo "アーカイブファイル :${ARCHIVE}"
# カレントディレクトリ内に ${LOG_DIR} ディレクトリが存在するか?
if [ ! -d ${LOG_DIR} ]; then
echo "ディレクトリが存在しません。実行を中止します。"
exit 1
fi
# tarで圧縮
tar jcvf ${ARCHIVE} ${LOG_DIR}
if [ $? -eq 1 ] ; then
echo "tar圧縮が異常終了しました。実行を中止します。"
exit 1
fi
echo "${LOG_BASEDIR}/${ARCHIVE} tar圧縮成功。"
exit 0
削除までしないと意味ねーんじゃねえかっていう人もいると思いますが、rmって怖いのでわざと載せない。そういうドキドキは自分て体験しろってこってす。
投稿 大野 義貴 [パソコン・インターネット] | 固定リンク |
スポンサードリンク
トラックバック(0)
トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/3359





![: Amazon.co.jp: プラスティック・メモリーズ 1【完全生産限定版】(イベントチケット優先販売申込券付) [Blu-ray]](/lists/_9/B00VWX66E8.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 2【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66K2.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 3【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6MV0.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 4【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66IO.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 5【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6Y0E.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 6【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX69D6.jpg)


コメントする