PostgreSQLスキルアップノート(自己啓発のための個人サイト)
番外編・時刻付きvmstatなど
【一覧に戻る】
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■■■■ PostgreSQL スキルアップノート
■■■■
■◆■■ 時刻付きvmstatなど
■■■■
■■■■
■■■■ 2013/01/03
■■■■ 使用環境:PostgreSQL9.1.7 (CentOS6.2)
(C) 2013 ohdb
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CentOS、Redhat (bash)にて確認
■■ 時刻付きvmstat
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【□】 vmstat 1 | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}'
2013/01/03 04:56:00 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
2013/01/03 04:56:00 r b swpd free buff cache si so bi bo in cs us sy id wa st
2013/01/03 04:56:00 1 0 0 244752 71044 676832 0 0 1 2 4 9 0 0 100 0 0
2013/01/03 04:56:01 0 0 0 244736 71044 676832 0 0 0 0 23 46 0 0 100 0 0
2013/01/03 04:56:02 0 0 0 244736 71044 676832 0 0 0 0 32 63 0 0 100 0 0
2013/01/03 04:56:03 0 0 0 244736 71044 676832 0 0 0 0 17 37 0 1 99 0 0
※vmstatからの出力をawkが処理する際に4KB(程度?)溜まらないとファイルに書き込まれない。
以下の項も同様に、コマンドが完結しないままawkに渡しているmpstatやiostatなどは、
ファイルへリダイレクトさせると最新の出力までにタイムラグがある。
リダイレクトさせなければ画面上でリアルタイムに確認できる。
■■ 時刻付きmpstat
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【□】 export LANG=C
【□】 mpstat 1 -P ALL | awk '{print strftime("%Y/%m/%d") ,$0}'
2013/01/03
2013/01/03 04:56:35 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
2013/01/03 04:56:36 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03 04:56:36 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03
2013/01/03 04:56:36 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
2013/01/03 04:56:37 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03 04:56:37 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03
2013/01/03 04:56:37 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
2013/01/03 04:56:38 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03 04:56:38 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03
2013/01/03 04:56:38 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
2013/01/03 04:56:39 all 0.99 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.01
2013/01/03 04:56:39 0 0.99 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.01
mpstatは各行に時刻だけは出してくれるので、それは利用して、日付のみを追加で左端に出力する。
LANG=Cにしているのはmpstatが出す時刻に日本語「時分秒」が入っているため。
■■ 時刻付きfree
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【□】 while true ;do free | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}';sleep 1;echo --; done
【□】 for i in `seq 10` ;do free | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}';sleep 1;echo --; done
2013/03/27 01:25:33 total used free shared buffers cached
2013/03/27 01:25:33 Mem: 1399724 1325828 73896 0 3504 1156632
2013/03/27 01:25:33 -/+ buffers/cache: 165692 1234032
2013/03/27 01:25:33 Swap: 2818040 1836 2816204
--
2013/03/27 01:25:34 total used free shared buffers cached
2013/03/27 01:25:34 Mem: 1399724 1325828 73896 0 3504 1156632
2013/03/27 01:25:34 -/+ buffers/cache: 165692 1234032
2013/03/27 01:25:34 Swap: 2818040 1836 2816204
--
2013/03/27 01:25:35 total used free shared buffers cached
2013/03/27 01:25:35 Mem: 1399724 1325828 73896 0 3504 1156632
2013/03/27 01:25:35 -/+ buffers/cache: 165692 1234032
2013/03/27 01:25:35 Swap: 2818040 1836 2816204
■■ 時刻付きiostat
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【□】 iostat 1 | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}'
2013/01/03 04:57:45
2013/01/03 04:57:45 avg-cpu: %user %nice %system %iowait %steal %idle
2013/01/03 04:57:45 0.03 0.00 0.04 0.06 0.00 99.87
2013/01/03 04:57:45
2013/01/03 04:57:45 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
2013/01/03 04:57:45 vda 0.19 1.15 3.17 1347424 3728024
2013/01/03 04:57:45 dm-0 0.43 1.14 3.17 1337218 3727968
2013/01/03 04:57:45 dm-1 0.00 0.00 0.00 3936 0
2013/01/03 04:57:45
2013/01/03 04:57:46 avg-cpu: %user %nice %system %iowait %steal %idle
2013/01/03 04:57:46 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03 04:57:46
2013/01/03 04:57:46 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
2013/01/03 04:57:46 vda 0.00 0.00 0.00 0 0
2013/01/03 04:57:46 dm-0 0.00 0.00 0.00 0 0
2013/01/03 04:57:46 dm-1 0.00 0.00 0.00 0 0
2013/01/03 04:57:46
2013/01/03 04:57:47 avg-cpu: %user %nice %system %iowait %steal %idle
2013/01/03 04:57:47 0.00 0.00 0.00 0.00 0.00 100.00
2013/01/03 04:57:47
2013/01/03 04:57:47 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
2013/01/03 04:57:47 vda 0.00 0.00 0.00 0 0
2013/01/03 04:57:47 dm-0 0.00 0.00 0.00 0 0
2013/01/03 04:57:47 dm-1 0.00 0.00 0.00 0 0
■■ 時刻付きps(実行中プロセス)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【□】 while true ;do ps auxr | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}';sleep 1;echo --; done
【□】 for i in `seq 10` ;do ps auxr | awk '{print strftime("%Y/%m/%d %H:%M:%S") ,$0}';sleep 1;echo --; done
2013/01/03 04:58:09 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
2013/01/03 04:58:09 postgres 22854 0.0 0.0 13424 940 pts/2 R+ 04:58 0:00 ps auxr
--
2013/01/03 04:58:10 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
2013/01/03 04:58:10 postgres 22857 0.0 0.0 13424 936 pts/2 R+ 04:58 0:00 ps auxr
--
2013/01/03 04:58:11 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
2013/01/03 04:58:11 postgres 22860 0.0 0.0 13420 932 pts/2 R+ 04:58 0:00 ps auxr
--
2013/01/03 04:58:13 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
2013/01/03 04:58:13 postgres 22863 0.0 0.0 13428 936 pts/2 R+ 04:58 0:00 ps auxr
以上