system management
1752571 メンバー
5244 オンライン
108788 解決策
新規ポスト

syslogのログローテートについて

 
buri0624
時折のアドバイザー

syslogのログローテートについて

お世話になります。

syslogのログローテート設定方法を

調査しています。

1日毎にローテートを行い、30日間

保存する事を考えているのですが、

どこの設定をいじれば良いのでしょ

うか?

探してみましたが、よく分からず

質問させて頂きました。

ご存知の方宜しくお願いします。

4件の返信4
hazelwood
信頼あるコントリビューター

syslogのログローテートについて

HP-UXにはlogrotateは入っていないはずです。

お望みのことをやるには、logrotateを入れるか、自作するしかないのでは無いかと思います。
nt
貴重なコントリビューター

syslogのログローテートについて

> 自作するしかないのでは無いかと思います。

簡単なサンプルを、

#! /bin/sh

cd /var/adm

# rename syslog to syslog.YYYYMMDD

mv syslog syslog.`date +%Y%m%d`

# switdh to new syslog

kill -HUP `cat /var/run/syslog.pid`

# rm old files

rm -f `ls -r syslog.???????? | tail +31`

buri0624
時折のアドバイザー

syslogのログローテートについて

返信有難うございます。

>HP-UXにはlogrotateは入っていないはずです。

>お望みのことをやるには、logrotateを入れるか、

>自作するしかないのでは無いかと思います

なるほど、そうなのですか。

マニュアルで、syslog-ngでログローテーション

できるという事が記載されていたので、その線

で今調査中です。

ご存知の方、設定したことがある方情報を

頂ければ幸いです。

サンプルは参考にさせて頂きます。

助かります。

snowing
時折のアドバイザー

syslogのログローテートについて

こんなんでいかがっすかねぇ〜?

#!/bin/sh

SYSLOG=/var/adm/syslog

cp -p $SYSLOG/syslog.log $SYSLOG/syslog.log.`date +%Y%m%d`

cat /dev/null > $SYSLOG/syslog.log

compress $SYSLOG/syslog.log.`date +%Y%m%d`

もしくは、syslogdの実行スクリプトを変更して、毎日再起動させちゃう、、、なんてのもありだと思います。それを毎日行えばローテーションできますよね。因みに、以下の例は11iv1です。

/sbin/init.d/syslogd

76行目の、

mv /var/adm/syslog/syslog.log /var/adm/syslog/OLDsyslog.log

をコメントアウトして、その部分に以下を追加します。通常は、ログ名がOLDsyslog.logって出るのを日付時間を付け加えられるように変更してます。

DATE=`date +'%y%m%d%H%M'`

mv /var/adm/syslog/syslog.log /var/adm/syslog/syslog.log.$DATE

因みに、サーバ再起動時もログのローテーションしてしまうので注意して下さい。1日何度か再起動するかもしれないことを考慮して、ログ名に時間まで記載されるようにしてます。