性能がちょっとおそいなとか、IOどうなってるんだろうなとおもったらsysstatが便利です。
かんたんなものはtopとか眺めているといいですが、ちょっときがきいたものをみたければ迷わずsysstatを使いましょう。
Ubuntuにはデフォでは入っていないのでインストールします。
インストール&設定
$ sudo apt-get install sysstat
設定ファイルを書き換えて性能取得を有効にします
$ sudo vi /etc/default/sysstat ENABLED="false" ↓ ENABLED="true"
サービス起動します
$ sudo /etc/init.d/sysstat start * Starting the system activity data collector sadc [ OK ] $
デフォルトだとCronでこんな感じに動きます。
$ cat /etc/cron.d/sysstat # The first element of the path is a directory where the debian-sa1 # script is located PATH=/usr/lib/sysstat:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin # Activity reports every 10 minutes everyday 5-55/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1 # Additional run at 23:59 to rotate the statistics file 59 23 * * * root command -v debian-sa1 > /dev/null && debian-sa1 60 2
つまりXX時05分から10分毎にログをとって、23時59分にログファイルをローテートする為にもう一度実行しています。
ログはこんな感じでファイルで出力されます。
$ ls -l /var/log/sysstat/ total 12 -rw-r--r-- 1 root root 11756 Oct 3 03:15 sa03
ちなみにファイル名ですが、「saDD」という形式で「DD」部分に日付が入ります。
パラメータをいじるとYYYYMMDDとかにも出来ます。詳しくは内部で使われているsadcコマンドのマニュアルを見ましょう
The standard system activity daily data file is named saDD unless option -D is used, in which case its name is saYYYYMMDD, where YYYY stands for the current year, MM for the current month and DD for the current day. By default it is located in the /var/log/sysstat direc‐ tory.
参照してみる
CPU情報を表示してみます(sa03のところは見たいファイルにあわせて変更する)
$ sar -f /var/log/sysstat/sa03 -P ALL Linux 4.4.0-36-generic (ubuntu-1404) 10/03/2016 _x86_64_ (2 CPU) 02:41:01 AM LINUX RESTART 02:45:01 AM CPU %user %nice %system %iowait %steal %idle 02:55:01 AM all 0.05 0.00 0.09 0.00 0.00 99.87 02:55:01 AM 0 0.04 0.00 0.10 0.00 0.00 99.86 02:55:01 AM 1 0.05 0.00 0.07 0.00 0.00 99.87 02:55:01 AM CPU %user %nice %system %iowait %steal %idle 03:05:01 AM all 0.05 0.00 0.07 0.00 0.00 99.89 03:05:01 AM 0 0.03 0.00 0.08 0.00 0.00 99.89 03:05:01 AM 1 0.06 0.00 0.06 0.00 0.00 99.89 03:05:01 AM CPU %user %nice %system %iowait %steal %idle 03:15:01 AM all 0.04 0.00 0.05 0.00 0.00 99.91 03:15:01 AM 0 0.02 0.00 0.06 0.00 0.00 99.91 03:15:01 AM 1 0.05 0.00 0.04 0.00 0.00 99.91 Average: CPU %user %nice %system %iowait %steal %idle Average: all 0.04 0.00 0.07 0.00 0.00 99.89 Average: 0 0.03 0.00 0.08 0.00 0.00 99.89 Average: 1 0.05 0.00 0.06 0.00 0.00 99.89
ロードアベレージをみるのはこんな感じ
$ sar -f /var/log/sysstat/sa03 -q
メモリやネットワークなども見れます。詳しくは以下等を参照しましょう。
Linux - sarコマンドについて - Qiita
Ksarで見やすく表示
コマンドで仔細に見るのもいいですが、GUIで見やすく見るほうがなにかと便利なのでKSARでみてみましょう。
https://sourceforge.net/projects/ksar/files/beta/
から、「kSar-5.1.0-beta4.zip」をダウンロード
$ export LC_ALL=C && export S_TIME_FORMAT=ISO
をうって言語と時間設定を直してから
$ sar -A 10 300 > performance.txt
でいけます。
詳しい使い方は以下にまとめてあります。
garapon.hatenablog.com