sarのデータを7日以上残す

今日はsarについて少し。

CentOSでsysstatパッケージをインストールすると、
iostat, mpstatなどと一緒に sar コマンドが使えるようになります。
(ちなみに今回はCentOS4.7を使っています)

sar 自体は非常に高機能で、システムの各種情報を調査することができます。

さて、sysstat パッケージをインストールすると、
/etc/cron.d/sysstat の設定でファイルに
sar コマンドの情報が蓄積されるようになっています。

# run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib/sa/sa1 1 1
# generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib/sa/sa2 -A

データを蓄積する変える場合は /usr/lib/sa/sa1 の
cron 実行間隔を変えればOKです。

デフォルトではこのファイルにsaXX,sarXX(XXは日付) の形式で
/var/log/sa 以下に過去7日分保持されます。
sar コマンドを用いて、ファイルを指定することで、
蓄積されたデータを参照することができます。

今回もう少し長い期間データを残したかったので、
少しスクリプトを変更してみました。

(1)「/usr/lib/sa/sa1」の6行目
DATE=`date +%d` → DATE=`date +%Y%m%d` に修正

(2)「/usr/lib/sa/sa2」の8行目
HISTORY=7 → HISTORY=100 に修正

(3)「/usr/lib/sa/sa2」の12行目
DATE=`date +%d` → DATE=`date +%Y%m%d` に修正

上のように修正した結果、「/var/log/sa」以下に
sa, sar ファイルにyyyyMMdd形式で日付がついた状態で
100日間分保持されるようになりました。

今日はこんなところで。