[Redhat Linux]sarの出力結果について

このQ&Aのポイント
  • sarの出力結果について悩んでいます。リソースを図る為、sysstatを入れて、sarによって結果を見ようと思いましたが、サーバーにより表示間隔が異なっています。
  • Aサーバーの場合、sarコマンドの結果が一日1つしかデータが取得できていません。Bサーバーの場合、sarコマンドの結果がランダムに出力されています。サーバーCの場合、sarコマンドの結果がきっちり5分おきに取得できています。
  • sarの取得間隔を5分おきに変更しており、sysstatのバージョンは5.0.5-11.rhel4です。Red Hat Enterprise Linux ES release 4を使用しています。
回答を見る
  • ベストアンサー

[Redhat Linux]sarの出力結果について

いつもお世話になっています。 sarの出力結果について悩んでいます。 リソースを図る為、sysstatを入れて、sarによって結果を見ようと思いましたが、サーバーにより表示間隔が異なっています。 すべてのサーバーで5分おきに出力するにはどうすればよいでしょうか。 ▼Aサーバー sarコマンドの結果が一日1つしかデータが取得できていない。。 ▼Bサーバー sarコマンドの結果がランダムに出力されている。 ▼サーバーC sarコマンドの結果がきっちり5分おきに取得できています。 ▼設定ファイル(設定は全ファイル共通です。) $ cat /etc/sysconfig/sysstat # How long to keep log files (days), maximum is a month HISTORY=7 $ cat /etc/cron.d/sysstat # run system activity accounting tool every 10 minutes */5 * * * * 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 取得間隔は5分置きに変更しております。 ▼sysstat バージョン $ rpm -qa | grep sysst sysstat-5.0.5-11.rhel4 ▼OSバージョン $ cat /etc/redhat-release Red Hat Enterprise Linux ES release 4 (Nahant Update 3) $ uname -a Linux xxxxxx 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux 以上宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

RedHat環境ではありませんが、以下はSolaris 9で作ってみた例です。 以下のスクリプトをcronで5分おきに実行すると、1日毎にcsvファイル にsarの結果を出力するというものです。 sarの引数としてCPU,Memoryを測定しています。 ================================== #!/bin/bash TODAY=`date +%Y%m%d` DATE=`date +%Y/%m/%d,%H:%M` SAR=(`/usr/sbin/sar -r -u 1 1`) echo -n $DATE, >> /usr/hoge/$HOSTNAME.$TODAY.csv echo ${SAR[14]},${SAR[19]} >> /usr/hoge/$HOSTNAME.$TODAY.csv ================================== sarコマンドのフルパスは、環境によって違うでしょうから一応確認し てみてください。 最後の行にあるSAR[14]などの部分は、OSによって出力される場所が変 わるかもしれません。sarで出力される結果の「何番目か」を意味して いますので、ご自身の環境でsarを実行してから確認してみてください。 (測定したい引数によっても変わるでしょうし) ホストが複数あるようですので、記録ファイル名を "ホスト名.年月日.csv" にしています。 「5分おきに出力する」の部分はcronへの設定で対応します。 cronの「分」を記述する部分に「*」ではなく「*/5」と入力すると5分 間隔で実行できますので、例えばスクリプト名を/usr/local/test.shと するなら、 */5 * * * * /usr/local/test.sh と記述しておけば5分間隔で実行してくれます。

akinz333
質問者

お礼

コマンドで別に取得すれば解決できますね。 CSVに加工する手間も省けますし。 ありがとうございました。

関連するQ&A

  • sysstatをインストールしたが、sarが使えない

    CnetOS 5 を使用しています。 #cat /etc/redhat-release CentOS release 5 (Final) 「sar」コマンドを使用したいと考え、WEB上から以下をダウンロードし、[./configure][make][make install]を実施しました。 ※sysstat-8.1.3.tar.gz その後「# sar」を実行するのですが、 『/var/log/sa/sa28 を開けません: そのようなファイルやディレクトリはありません』 とErrorがでて、コマンドが実行できません。 Google先生でも調べたのですが・・どなたかおわかりの方いらっしゃらないでしょうか。 よろしくお願いします。

  • 【Redhat Linux】「sar -d」の実行結果について

    はじめまして。 sarコマンドについての質問です。 RedHat Linuxで性能情報を採取しているのですが、「sar -d」コマンドを実行した際、出力結果の"DEV"の列に表示されるデバイス?(dev8-16とか、dev231-4とか)の意味がわかりません。 どのようなデバイスにどのような数字が割り当てられているのでしょうか。また、そのような情報はどこかのファイルに持っているのでしょうか。 以上、よろしくお願いいたします。

  • sysstatでのリソース状況取得において、0時0分のデータが出力され

    sysstatでのリソース状況取得において、0時0分のデータが出力されません。 ”00時00分01秒 CPU %user %nice %system %iowait %steal %idle”のように出力されているだけで、データが出力されていません。他のデータ(メモリ等)についても同様となってしまっているのですが、出力させるにはどのようにしたらいいのでしょうか。 sysstatはOS導入時に自動でインストールされたものを設定変更なしで使用しています。 SARコマンドの出力例: #sar -f /var/log/sa/sa31 Linux 2.6.18-128.el5 (xxx) 2010年01月31日 00時00分01秒 CPU %user %nice %system %iowait %steal %idle 00%9

  • CPU 使用率について(ps,top,sar)

     "ps -aux"コマンドを利用したスクリプトを作成し、CPU 使用率を定期的に監視するようにしています。 先日、このスクリプトで CPU 使用率 99% を示す異常がありましたが、同じタイミングで top や sar を 試したところ、CPU 使用率は 1% もありませんでした。 異常があった時の ps -aux の取得結果は以下の通りです。 USER   PID %CPU %MEM VSZ RSS TTY STAT START  TIME COMMAND root    7 99.9  0.0  0  0  ?  SW Jul23 272:54 [kscand/Normal] ※等幅フォントだと見易いです kscand で CPU を 99.9% 消費しているように見えるのですが、top や sar コマンドの CPU 使用率は いずれも 1% 未満でした。またサーバの動作自体は軽快で、とても CPU を使い切っているようには 思えませんでした。 この事から ps コマンドの異常か何かだと思うのですが、ps と top や sar で取得する CPU 使用率の値に どの様な違いがあるのでしょうか。また、取得する値についてそれぞれ信頼性はあるのでしょうか。 ご存知の方いらっしゃいましたらご教示の程お願いします。 ■バージョン OS:Redhat Linux 9 (Shrike) procps version 2.0.11 sysstat version 4.0.7

  • LinuxのPHPのパス

    Linuxのレンタルサーバーで、PHPのパスを調べたのですが、以下のように2つ出てきました。 # whereis php php: /usr/local/bin/php /usr/local/php /usr/local/bin/phpは /usr/local/php5/bin/php-cli-5.2.9につながっていました。 /usr/local/phpの中身はこんなかんじでした。 drwxr-xr-x 2 root root 4096 Jul 2 16:29 bin drwxr-xr-x 2 root root 4096 Jun 25 12:13 etc drwxr-xr-x 3 root root 4096 Mar 17 10:28 include drwxr-xr-x 3 root root 4096 Jul 2 16:34 lib drwxr-xr-x 3 root root 4096 Mar 17 10:29 man drwxr-xr-x 3 root root 4096 Nov 15 2007 php PHPのパスはどちらですか?

    • ベストアンサー
    • PHP
  • bashでの複数行のコマンドのリダイレクト

    Linux上のbashを使用して、複数行のコマンドの結果を一度にリダイレクトしたいと思います。 思いついた方法が、 #!/bin/bash cat << EOF >> ./test.log cat /etc/fstab cat /etc/inittab cat /etc/modprobe.conf EOF といった方法なのですが、これですとそれぞれのコマンドの結果ではなく、 単に cat /etc/fstab cat /etc/inittab cat /etc/modprobe.conf と言った出力結果がtest.logに出力されてしまいます。 上記のような複数のコマンドの結果を一度にリダイレクトする方法は無いでしょうか? cat /etc/fstab >> ./test.log cat /etc/inittab >> ./test.log cat /etc/modprobe.conf >> ./test.log と言った方法は避けたいと思います(実際には何10行と言うコマンド結果を出力したいので)

  • linuxで危険なコマンド操作が知りたいです

    RedHat9で、rootユーザでcp /usr/lib/libxxxx.s* /lib とした時にcannot・・とか見慣れないエラーが 表示され、何でコピーできないのかと何度もやっていると、いつの間にか/usr/libがディレクトリごと消えていることが発覚しました。。 その前にrmコマンドも使いましたが-rfオプションをつけていなかったので、ディレクトリ内全てとかディレクトリごと消えることはないと思うのですが(T_T) とりあえずOSは立ち上がりますが、いろんなサーバが起動しなったので、OS再インストールしようと思いますが、又同じ事を繰り返したくないので、注意するコマンド操作があったら知りたいです。

  • ftpコマンド出力結果の取得

    ftpコマンドのバッチ処理によってファイルの一覧の結果を取得したいのですが、 リダイレクション等を用いても取得できません。 どのようにすればいいか教えてください。 **************状況************* OSおよびOSレベル:AIX5.2 シェル:Kシェル コマンドファイルの中身(ftp.txt) cat << EOF | ftp -n open SERVER user USER PW cd PATH ls -l bye EOF SERVER:実際のサーバー名 USER:実際のユーザー名 PW:実際のパスワード PATH:実際のパス これを以下のように実行し、結果を取得しようとしました。 # ./cmd.ftp > log しかし、出力ファイルlogの中身はカラっぽでした。 ところが、リダイレクションを外し、コマンドファイルのみを実行すると、結果が画面に表示されます。 何故、画面には表示されるのに、リダイレクションやパイプでは結果が渡されないのかが分かりません。

  • findでファイル抽出が行えない

    findコマンドの使い方について、 疑問がありますで、掲示いたします。 【質問】 今、以下の同名のファイル名が存在しています。 [root@centos5 ~]# ls -l /etc/httpd/modules/mod_actions.so -rwxr-xr-x 1 root root 9628 10月 21 06:05 /etc/httpd/modules/mod_actions.so [root@centos5 ~]# ls -l /usr/lib/httpd/modules/mod_actions.so -rwxr-xr-x 1 root root 9628 10月 21 06:05 /usr/lib/httpd/modules/mod_actions.so この状態で、以下のようにfindコマンドを実行しました。 find / -name mod_actions.so すると、以下の結果が表示されました。 [root@centos5 ~]# find / -name mod_actions.so /usr/lib/httpd/modules/mod_actions.so 【確認】 /etc/httpd/modules/mod_actions.soが何故、表示されないのでしょうか。 上記コマンドのコマンドの構文が不適切だからなのか。 こちら、上記2ファイルを抽出するfindの構文を教えて頂けないでしょうか。 以上、よろしくお願いいたします。

  • コマンド結果のリダイレクト

    UNIXコマンドで「sar」がありますが、 その中のオプション「-o」を使用しないで ファイルにリダイレクトをしたいです。 なお、その際にバックグランドで実行しています。 sarコマンドは長時間動かし途中でリダイレクト結果をviewなどで見たいのですがどうしたらよいでしょうか? ex) sar 5 10000 > log.txt & これだと、sarコマンドが終了しないとlog.txtに出力されません。いつでもviewなどで最新のlog.txtを見たいです