Linux监控进程的iops,linux性能监控工具--Collectl
簡介:
Collectl是一個非常好的linux性能監控工具,通過Collectl能監控的東西很多,像cpu、內存、磁盤、進程、網絡、nfs、tcp、socket等。
安裝:
本人的一貫想法,在安裝linux的軟件時能用軟件包安裝的盡量用軟件包來安裝,方便快捷。
[root@server_32 ~]# yum search collectl
使用示例:
Collectl監控的東西很多,相應的,可用的參數和選項也很多,詳細可以用man colloect來看一下。
(1)什么參數都不帶,則每隔一秒輸出cpu、磁盤、網絡的簡短信息
[root@cfserver ~]# collectl
waiting for 1 second sample...
#
#cpu sys inter ?ctxsw KBRead ?Reads KBWrit Writes ? KBIn ?PktIn ?KBOut ?PktOut
25 ?24 ?1104 ? 1061 ? ? ?0 ? ? ?0 ? ? ?0 ? ? ?0 ? ? ?3 ? ? 22 ? ? ?8 ? ? ?21
25 ?24 ?1101 ? ?909 ? ? 48 ? ? ?2 ? ? 12 ? ? ?2 ? ? ?2 ? ? 24 ? ? ?3 ? ? ?21
25 ?24 ?1144 ? 1163 ? ? ?0 ? ? ?0 ? ? ?0 ? ? ?0 ? ? ?6 ? ? 46 ? ? 11 ? ? ?46
(2)監控cpu
[root@cfserver ~]# collectl -scj --top
-s表示要監控子系統,c/j表示要監控的子系統為cpu和cpu中斷,在監控子系統的選項中,使用小寫表輸出簡單信息,大寫則輸入詳細信息。
waiting for 1 second sample...
#
#cpu sys inter ?ctxsw Cpu0 Cpu1 Cpu2 Cpu3
25 ?24 ?1087 ? ?910 2086 ?999 1000 ?999
26 ?24 ?1149 ? 1265 2149 1000 1001 1000
25 ?24 ?1129 ? 1150 2129 1001 1000 1001
[root@cfserver ~]# collectl -sCj --top ?#top選項,像系統top那樣實時顯示
### RECORD ? 47 >>> cfserver <<< (1326248562.002) (Wed Jan 11 10:22:42 2012) ###
# SINGLE CPU STATISTICS
# ? Cpu ?User Nice ?Sys Wait IRQ ?Soft Steal Idle INTRPT
0 ? ? 1 ? ?0 ? ?1 ? ?0 ? ?0 ? ?0 ? ? 0 ? 98 ? 2068
1 ? ? 4 ? ?0 ? ?1 ? ?0 ? ?0 ? ?0 ? ? 0 ? 95 ? 1000
2 ? ? 3 ? ?0 ? 12 ? ?0 ? ?0 ? ?0 ? ? 0 ? 85 ? 1000
3 ? ? 2 ? ?0 ? 86 ? ?0 ? ?0 ? ?0 ? ? 0 ? 11 ? 1001
# TOP PROCESSES sorted by time (counters are /sec) 10:22:42
# PID ?User ? ? PR ?PPID THRD S ? VSZ ? RSS CP ?SysT ?UsrT Pct ?AccuTime MajF MinF Command
31489 ?daemon ? 25 ?3533 ? ?0 R ?169M ? 14M ?3 ?0.97 ?0.02 ?99 ?30149:05 ? ?0 ? ?0 /usr/local/apache/bin/httpd
9445 ?root ? ? 18 ?5421 ? ?0 R ?112M ? 18M ?2 ?0.02 ?0.04 ? 6 ? 0:03.04 ? ?0 ? ?0 /usr/bin/perl
13963 ?mysql ? ?15 13892 ? 11 S ? ?1G ?175M ?2 ?0.00 ?0.01 ? 1 102:17.84 ? ?0 ? ?0 /usr/local/mysql/libexec/mysqld
19673 ?daemon ? 16 ?3533 ? ?0 S ?163M ? ?8M ?0 ?0.00 ?0.01 ? 1 ? 0:26.90 ? ?0 ? ?1 /usr/local/apache/bin/httpd
1 ?root ? ? 15 ? ? 0 ? ?0 S ? 10M ?576K ?3 ?0.00 ?0.00 ? 0 ?39:45.59 ? ?0 ? ?0 init
2 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?0 ?0.00 ?0.00 ? 0 ? 1:49.38 ? ?0 ? ?0 migration/0
3 ?root ? ? 34 ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?0 ?0.00 ?0.00 ? 0 ? 4:28.79 ? ?0 ? ?0 ksoftirqd/0
4 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?0 ?0.00 ?0.00 ? 0 ? 0:00.00 ? ?0 ? ?0 watchdog/0
5 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?1 ?0.00 ?0.00 ? 0 ? 1:44.35 ? ?0 ? ?0 migration/1
6 ?root ? ? 34 ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?1 ?0.00 ?0.00 ? 0 ? 0:46.23 ? ?0 ? ?0 ksoftirqd/1
7 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?1 ?0.00 ?0.00 ? 0 ? 0:00.00 ? ?0 ? ?0 watchdog/1
8 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?2 ?0.00 ?0.00 ? 0 ? 2:13.13 ? ?0 ? ?0 migration/2
9 ?root ? ? 34 ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?2 ?0.00 ?0.00 ? 0 ? 0:04.87 ? ?0 ? ?0 ksoftirqd/2
10 ?root ? ? RT ? ? 1 ? ?0 S ? ? 0 ? ? 0 ?2 ?0.00 ?0.00 ? 0 ? 0:00.00 ? ?0 ? ?0 watchdog/2
(3)監控磁盤
[root@cfserver ~]# collectl -sD
waiting for 1 second sample...
# DISK STATISTICS (/sec)
# ? ? ? ? ? Pct
#Name ? ? ? KBytes Merged ?IOs Size ?KBytes Merged ?IOs Size ?RWSize ?QLen ?Wait SvcTim Util
sda ? ? ? ? ? ? ?0 ? ? ? ? ? ?0 ? ? ? ? 0 ? ? 0 ? ? ? ??0 ? ? ? ? ? 0 ? ? ???0 ? ? ?0 ? ? ? ? 0 ? ? ? ? ? 0 ? ? ??0 ? ? ? ?0 ? ? ? ?0
sdb ? ? ? ? ? ? ?0 ? ? ? ? ? ?0 ? ? ? ? 0 ? ? 0 ? ? ? ? 0 ? ? ? ? ? 0 ? ? ? ?0 ? ? ?0 ? ? ? ? 0 ? ? ? ? ??0 ? ? ? 0 ? ? ? ?0 ? ? ? ?0
hda ? ? ? ? ? ? ?0 ? ? ? ? ? ?0 ? ? ? ? 0 ? ? 0 ? ? ? ? 0 ? ? ? ? ? 0 ? ? ? ?0 ? ? ?0 ? ? ? ? 0 ? ? ? ? ? 0 ? ? ? 0 ? ? ? ?0 ? ? ? ?0
sda ? ? ? ? ? ? ?0 ? ? ? ? ? ?0 ? ? ? ? 0 ? ? 0 ? ? ?1612 ? ? ? 97 ? ? 337 ? ?5 ? ? ? ? 4 ? ? ? ? ?80 ? ?186 ? ? ?2 ? ? ? ?73
可以看到主要為寫操作,且全部發生在sda,我們可以過濾一下
[root@cfserver ~]# collectl -sD --dskfilt sda ?#可以多個,如^sd,dm包含sd開頭及dm的磁盤
waiting for 1 second sample...
# DISK STATISTICS (/sec)
# ? ? ? ? ? ? ? ? Pct
#Name ? ? ? KBytes Merged ?IOs Size ?KBytes Merged ?IOs Size ?RWSize ?QLen ?Wait SvcTim Util
sda ? ? ? ? ? ? ? ? ? ??0 ? ? ? ? ? 0 ? ? ?0 ? ? 0 ? ? 1920 ? ? ? ? 19 ?443 ? ?4 ? ? ? ? ? ?4 ? ? ? 88 ? ? 242 ? ? ? ? 2 ? 97
sda ? ? ? ? ? ? ? ? ? ??0 ? ? ? ? ??0 ? ? ?0 ? ??0 ? ? ? 552 ? ? ??103 ? ?35 ? 16 ? ? ? ? ? 15 ? ? ? 0 ? ? ? 22 ? ? ? ? 2 ? ?7
sda ? ? ? ? ? ? ? ? ? ? 0 ? ? ? ? ? 0 ? ? ?0 ? ? 0 ? ? ? ? 24 ? ? ? ? ? 3 ? ? ?3 ? ?8 ? ? ? ? ? ??8 ? ? ? ? 0 ? ? ? ?7 ? ? ? ??7 ? ?2
從上面看到sda有一次IOPS為443,等待wait為242,可以說磁盤IO是有一些問題的。
(4)監控內存
[root@cfserver ~]# collectl -sM
waiting for 1 second sample...
# MEMORY STATISTICS
# Node ? ?Total ? ? Used ? ? Free ? ? ?? Slab ? ? ? Mapped ? ? ?Anon ? ? ?Inact ? ? Hit%
0 ? ?4023M ? ?3422M ?615488K ?171212K ? 33980K ? ?2539M ?267728K ? ?0
0 ? ?4023M ? ?3422M ?615488K ?171212K ? 33984K ? ?2539M ?267728K ? ?0
0 ? ?4023M ? ?3422M ?615488K ?171212K ? 33984K ? ?2539M ?267732K ? ?0
(5)監控進程
[root@cfserver data]# collectl -sZ --procfilt Cnginx --procopts c ?#監控nginx進程
waiting for 60 second sample...
# PROCESS SUMMARY (counters are /sec)
# PID ?User ? ? PR ?PPID THRD S ? VSZ ? RSS CP ?SysT ?UsrT Pct ?AccuTime MajF MinF Command
4798 ?root ? ? 21 ? ? 1 ? ?0 S ? 36M ? ?4M ?2 ?0.00 ?0.00 ? 0 132:01.89 ? ?0 ? ?0 nginx:
29298 ?nobody ? 15 ?4798 ? ?0 S ? 41M ? ?8M ?0 ?0.03 ?0.03 ? 0 ? 4:29.77 ? ?0 ? ?0 nginx:
29299 ?nobody ? 15 ?4798 ? ?0 S ? 41M ? ?8M ?3 ?0.00 ?0.00 ? 0 ? 4:28.23 ? ?0 ? ?0 nginx:
29300 ?nobody ? 15 ?4798 ? ?0 S ? 41M ? ?8M ?0 ?0.00 ?0.00 ? 0 ? 4:43.83 ? ?0 ? ?0 nginx:
29301 ?nobody ? 15 ?4798 ? ?0 S ? 41M ? ?8M ?0 ?0.00 ?0.00 ? 0 ? 4:19.98 ? ?0 ? ?0 nginx:
簡單介紹到這,上面示例只是collectl冰山中很小的一角,更多用法可到官網看看文檔。
總結
以上是生活随笔為你收集整理的Linux监控进程的iops,linux性能监控工具--Collectl的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux的grup文件,Linux /
- 下一篇: linux系统中使用chattr命令的,