syslogのローテーション設定

OKWave

2007-11-07 16:00

syslogのローテーション設定

FreeBSD上でsyslogのローテーションを設定しています。
ローテーションは毎日午前0時に行い、それが正常に
ログファイルのファイル名を syslog.log.2006-06-11.gz
(つまりsyslog.log.(ログローテーションを実行した前日の日付))
のように運用したいと思っています。
何かアイデアがありましたらお教えください。

今のところ、ローテーションにはnewsyslogを使用しています。
ローテーション自体は問題なく動作していますが、ファイル名の
変更処理がわかりません。
また自分は当該サーバの管理者ですので、やれることに
権限上の制限はありません。

よろしくお願いいたします。

良回答

がると申します。
似たような状況でlogをローテートしているbashのバッチファイルを記載してみます。
ちと対象ファイル、ファイル名の命名規則など異なるかと思うので、適宜アレンジしてください。
なにかの参考にでもなれば幸いです。


#!/bin/bash

DATE=`/bin/date +%Y%m%d`_
DIR=/var/log

for file in syslog access_log http_error_log 
do
cp $DIR/$file $DIR/bak/$DATE$file
cat /dev/null > $DIR/$file
done

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]