Edited at
LinuxDay 14

Linux - sarコマンドについて

More than 3 years have passed since last update.

sarコマンドを使用するたびに検索していたので、障害調査や性能試験でよく使うコマンドを纏めてみました。


環境


  • OS........ Ubuntu14.04

  • sysstat... 10.2.


インストール


インストールコマンド

sudo apt-get install sysstat


ファイル指定


sysstatで取得しているsarログのデータを確認

sar -u -f /var/log/sysstat/sa01


期間指定


指定時刻以降の情報を表示(From)

sar -u -s 21:00:00 -f /var/log/sysstat/sa01


指定時刻までの情報を表示(To)

sar -u -e 22:00:00 -f /var/log/sysstat/sa01


CPU使用状況


CPU使用状況確認(全体)

sar -u 1 


CPU使用状況確認(Core単位)

sar -P ALL 1


出力例

02:04:02 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle

02:04:03 PM all 0.00 0.00 0.00 0.00 2.94 97.06


項目


  • %user..... ユーザが利用しているCPU使用率

  • %nice..... nice値を変更しているプロセスのCPU使用率

  • %system... システムが利用しているCPU使用率

  • %iowait... IO待ちしているCPU使用率

  • %steal.... ゲストOSが割り当て要求をしたが、割り当ててもらえなかったCPU使用率

  • %idle..... 待機中のCPU使用率


ロードアベレージ状況


ロードアベレージ状況確認

sar -q 1


出力例

03:48:12 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked

03:48:13 PM 0 196 0.00 0.01 0.05 0


項目


  • runq-sz.... 実行待ちのキューに入っているプロセス数

  • plist-sz... プロセスリスト中のプロセス数とスレッド数

  • ldavg-1.... 直近1分間のロードアベレージ

  • ldavg-5.... 直近5分間のロードアベレージ

  • ldavg-15... 直近15分間のロードアベレージ

  • blocked.... ※調査中


コンテキストスイッチ状況


コンテキストスイッチ状況確認

sar -w 1 


出力例

02:54:04 PM    proc/s   cswch/s

02:54:05 PM 0.00 385.15


項目


  • proc/s.... 1秒あたりの生成されたプロセス数

  • cswch/s... 1秒あたりのコンテキストスイッチ回数


メモリ使用状況


メモリ使用状況確認

sar -r 1 


出力例

02:34:19 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty

02:34:20 PM 234892 781456 76.89 89860 337344 705296 69.40 436968 213948 52
02:34:21 PM 234892 781456 76.89 89860 337344 705296 69.40 436968 213948 52


項目


  • kbmemfree... 物理メモリの空き容量

  • kbmemused... 使用中の物理メモリ量

  • %memused.... 物理メモリの使用率

  • kbbuffers... バッファとして使用されている物理メモリの容量

  • kbcached.... キャッシュとして使用されている物理メモリの容量

  • kbcommit.... 事前に確保されているメモリ容量

  • %commit..... 事前に確保されているメモリ容量の割合

  • kbactive.... ※調査中

  • kbinact..... ※調査中

  • kbdirty..... ※調査中


スワップ使用状況確認


スワップ使用状況確認

sar -S 1


出力例

02:36:40 PM kbswpfree kbswpused  %swpused  kbswpcad   %swpcad

02:36:41 PM 0 0 0.00 0 0.00


項目


  • kbswpfree... スワップ領域の空き容量

  • kbswpused... スワップ領域の使用量

  • %swpused.... スワップ領域の使用率

  • kbswpcad.... キャッシュされたスワップメモリ容量

  • %swpcad..... 使用されたスワップスペースに対する、キャッシュされたスワップメモリ使用率


ディスク使用状況


ディスク使用状況確認(デバイス単位)

sar -p -d 1 1


出力例

02:14:07 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util

02:14:07 PM xvda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


項目


  • tps.............. 1秒間のI/Oリクエスト数(転送回数)

  • rd_sec(rsec)/s... 1秒間の読み込みセクタ数(1セクタ512バイト)

  • wr_sec(wsec)/s... 1秒間の書き込みセクタ数(1セクタ512バイト)

  • avgrq-sz......... デバイスへのIOリクエストの平均セクタサイズ

  • avgqu-sz......... デバイスへのIOリクエストの待ち行列の平均セクタサイズ

  • await............ デバイスへのIOリクエストの平均待ち時間(単位msec)[待ち行列にいる時間+処理時間]

  • svctm............ デバイスへのIOリクエストの平均処理時間(単位msec)

  • %util............ デバイスへのIOリクエスト中のCPU使用率(ここが継続的に100%だとディスク部分でボトルネックになっている可能性が高い)


ネットワーク使用状況


ネットワーク使用状況(全体)

sar -n DEV 1


Network使用状況確認(NIC単位)

sar -n DEV 1 | grep eth0


出力例

02:07:30 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil

02:07:30 PM eth0 35.00 42.50 2.03 5.31 0.00 0.00 0.00 0.00
02:07:30 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


項目


  • rxpck/s.... 1秒間あたりの受信パケット数

  • txpck/s.... 1秒間あたりの送信パケット数

  • rxbyt/s.... 1秒間あたりの受信バイト数

  • txbyt/s.... 1秒間あたりの送信バイト数

  • rxcmp/s.... 1秒間あたりの圧縮受信パケット数 (for cslip etc.)

  • txcmp/s.... 1秒間あたりの圧縮送信パケット数

  • rxmcst/s... 1秒間あたりのマルチキャスト受信パケット数


ネットワークエラー状況


ネットワークエラー状況確認(全体)

sar -n EDEV 1


ネットワークエラー状況確認(NIC単位)

sar -n EDEV 1 | grep eth0


出力例

02:07:03 PM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s

02:07:03 PM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:07:03 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


項目


  • rxerr/s.... 1秒あたり総受信不良パケット数

  • txerr/s.... パケット送信時に発生した1秒あたりエラー発生数

  • coll/s..... パケット送信時に発生した1秒あたりパケット衝突数

  • rxdrop/s... Linuxバッファ上の領域不足によって発生した、1秒あたりの受信パケットのドロップ数

  • txdrop/s... Linuxバッファ上の領域不足によって発生した、1秒あたりの送信パケットのドロップ数

  • txcarr/s... パケット送信時に発生した1秒あたりのキャリアエラー数

  • rxfram/s... パケット受信時に発生した、1秒あたりフレーム・アラインメント・エラー数

  • rxfifo/s... 1秒あたりの受信パケットのFIFOオーバーラン・エラー数

  • txfifo/s... 1秒あたりの送信パケットのFIFOオーバーラン・エラー数


ネットワークソケット使用状況


ネットワークエラー状況確認

sar -n SOCK -f /var/log/sysstat/sa03


出力例

02:11:36 PM    totsck    tcpsck    udpsck    rawsck   ip-frag    tcp-tw

02:11:37 PM 259 36 6 0 0 0


項目


  • totsck....システムが使用した総ソケット数

  • tcpsck....現在使用中のTCPソケット数

  • udpsck....現在使用中のUDPソケット数

  • rawsck....現在使用中のRAWソケット数

  • ip-frag...現在使用中のIPフラグメント数

  • tcp-tw....TIME_WAITステータスにあるTCPソケット数


参考