Solaris資源監控命令

Solaris資源監控命令

命令作用
 
iostat: 磁盤IO監控
 
vmstat: 虛擬內存監控
 
prstat: 進程監控
 
mpstat: CPU監控
 
netstat: 網絡狀態監控
 
sar:    全面監控
 


一、進程監控 prstat
-bash-3.00#prstat

   PID USERNAME SIZE   RSS STATE  PRI NICE     TIME  CPU PROCESS/NLWP

  2450 root    8044M 5714M cpu2   10    0 204:37:21  51% java/612

 17405 root     136M   39Msleep   59    0  7:23:45 0.1% java/25

 15223 root    6360K 4824K cpu18   59    0  0:00:00 0.1% prstat/1

……..

Total:44 processes, 861 lwps, load averages: 2.09, 2.08, 2.07

?        Size: 進程映像的大小(進程的總虛擬內存大小),包括所有映射的文件和設備(進程的文本區(程序空間)、數據區、動態分配區的總和)

?        RSS:進程常駐大小。表示映射到進程的物理內存總量,包括共享給其他進程的物理內存。

?        TIME:進程累計執行時間。

?        CPU:當前進程CPU使用時間的百分比;

?        PROCESS/NLWP:進程名(執行文件名)以及進程的線程數。

?        PID:進程ID號;

?        USERNAME:實際的用戶名(登陸名)或者用戶ID。

?        PRI:進程優先級,數字越大則優先級越高。

?        NICE:用於優先級計算的精確數字。

在實際的性能問題分析過程中,需要關注的參數主要是Size,RSS,TIME,CPU,NLWP。在一些極端的情況下,TIME和CPU兩項內容能表示系統出現了異常,比如TIME顯示的數值非常大,明顯不合常理,或

者某個應用此時CPU使用率遠比正常情況要大的多。

       其次,在最後一行,prstat還給出了當前系統的進程數和線程數,以及系統在當前時刻,5分鐘內,15分鐘內的系統平均負載情況:

       Total: 44 processes, 861 lwps,load averages: 2.09, 2.08, 2.07

       這些數據都有助於我們瞭解系統的整體情況,後面會對平均負載的含義做詳細說明。

在使用prstat獲得一個對所有進程運行的整體印象後,可以進一步通過一些參數來觀測某個具體應用進程的詳細情況。

root@t139 #prstat -mLp 3411

   PID USERNAME USR SYS TRP TFL DFL LCK SLP LATVCX ICX SCL SIG PROCESS/LWPID

  3411 root      21 0.0 0.0 0.0 0.0  79 0.0 0.0  4  18   7   0java/10

  3411 root    2.1 0.2 0.0 0.0 0.0  92 5.7 0.0285   7 939   0 java/3560

  3411 root    0.5 0.0 0.0 0.0 0.0  99 0.50.0  37  0 143   0 java/4308

  3411 root    0.0 0.0 0.0 0.0 0.0  14  86 0.0   2  0   8   0 java/120

……

Total: 1processes, 176 lwps, load averages: 0.05, 0.10, 0.16

-L:顯示進程的線程信息;

-m:顯示進程的微態;微態以時間基準來表示,並且以百分比形式分散到每個線程。

-p:指定觀測的進程;

?        LCK:進程花費在等待用戶鎖上的時間百分比;

?        SLP:進程花費在休眠上的時間百分比;

?        DFL: 顯示花費在等待被服務的數據錯誤的時間百分比。如果該值較高,顯示內存不足。

?        LAT:進程花費在等待CPU上的時間。

?        VCX             The number of voluntary contextswitches.

?        ICX             The number of involuntary contextswitches.

?        SCL             The number of system calls.

?        SIG             The number of signals received.

可以使用USR和SYS的狀態來查看一個進程消耗的CPU百分比,LAT列顯示等待CPU時間的百分比。查看TFL和DFL決定一個進程是否或者怎樣去等待內存頁面調度,DFL欄顯示花費在等待被服務的數據錯誤的

時間百分比。如果該值過大,顯示系統運行內存不足(後面還會介紹多種方法,用於分析系統內存不足)。有關重要事件的提示,比如磁盤或者網絡等待,連同其他內核事件都綁定到SLP狀態。因爲SLP

列包含磁盤讀寫,其他類型的調度也會影響到SLP狀態顯示花費的時間。比如,內核鎖或者條件變量同樣也會累積實際,並顯示在此狀態中。

二 、 CPU和內存監控:vmstat
-bash-3.00$ vmstat 3

 kthr     memory            page            disk          faults      cpu

 r bw   swap free  re  mf pi  po fr de   sr s1 sd sd  --  in   sy   cs  ussy  id

 0 00 2001848 541208 23 233 71 19  37 2600 220  0 25  0 1185  25241464  2 1  97

 0 00 1667384 140408 1   9  0 0  0 1904  0 0 0  4  0 507  476  908 0  0  99

 0 00 1667384 140408 0   0  0 0  0 1232  0 0 0  3  0 484  565  922 0  1  99

 0 00 1667376 140400 0   1  0 0  0 752   0 0 0  2  0  4811636  925 1  0  99

 0 00 1667376 140384 0   0  0 0  0 272   0 0 0  3  0 521  651  880 0  0  99

 0 00 1667376 140384 0   0  0 0  0  0   0 0 0  2  0 499  494  840 0  0  99

 0 00 1667376 140344 50 177  8  0 0  0  0  0 0  4  0 1948 2746  2205  2 1  97

第一行是自啓動以來的摘要信息,緊接着是每隔3秒鐘一個示例。

參數說明:

Kthr:處於各種狀態中的內核線程數量,包括:

?        r:在運行隊列中的內核線程數;

?        b:在等待IO資源、分頁等被阻塞得內核線程數;

?        w:正在等待處理資源結束的被交換處的輕量級線程的數量。

Memory:

?        Swap:可用的交換空間(KB);

?        Free: 剩餘的物理內存(KB);

Page;顯示頁故障和分頁活動性,以每秒爲單位。

?        Re:頁要求歸還(page reclaims);

?        Mf: 最小故障;

?        Pi:頁入(KB);

?        Po:頁出(KB);

?        Fr: 剩餘頁頁出(KB);

?        De:預計的短期內內存不足頁出(KB);

?        Sr:時鐘算法掃描的頁;

Disk:每秒磁盤操作數。S表示SCSI磁盤;

Faults:報告自陷/中斷率;

?        In:中斷;

?        Sy:系統調用;

?        Cs:CPU上下文切換。

CPU:

?        us:用戶時間百分比;CPU處理用戶模式的線程所花費的時間;

?        sy:系統時間百分比:CPU處理代表用戶模式線程的系統調用所花費的時間,加上處理內核線程所花費的時間。

?        Id:閒置百分比;CPU等待可運行線程的時間。

vmstat中的kthr:r衡量標準作爲CPU飽和度的衡量方法來說是非常有用的。但是,由於這是所有CPU運行隊列的合計值,因此將kthr:r除以CPU數目所得到的值可與其他服務器相比較。

任何持續不變的非零值都可能會降低性能。性能的降低是逐漸的(與內存飽和度的情況不同,其性能降低是迅速的)。

間隔時間十分重要。有可能看到CPU飽和度(kthr:r)而CPU又是閒置的(cpu:id).要了解爲何有這種可能性,可用sar –q中的%runocc,或通過使用Dtrace更精確地衡量運行隊列。可能會發現在一個較

短的期間內運行隊列很長,其後是閒置時間。在間隔時間內的平衡產生了非零的運行隊列長度和閒置時間。

三、IO監控:iostat
-bash-3.00# iostat -xnz 1 3

                    extended device statistics

   r/s    w/s   kr/s  kw/s wait actv wsvc_t asvc_t  %w  %b device

   0.0    0.0    0.0   0.0  0.0  0.0   0.0    0.2   0   0 c0t0d0

   0.0    0.3    0.2   1.1  0.0  0.0   0.0   15.3   0   0 c1t1d0

    0.4   6.8   12.3   78.5 0.0  0.2    1.6  21.2   0   4 c1t0d0

                    extended device statistics

   r/s    w/s   kr/s  kw/s wait actv wsvc_t asvc_t  %w  %b device

   0.0    7.0    0.0  55.8  0.0  0.1   0.0    9.0   0   4 c1t0d0

                   extended devicestatistics

   r/s    w/s   kr/s  kw/s wait actv wsvc_t asvc_t  %w  %b device

0.0    1.0   0.0    8.0  0.0 0.0    0.0   14.2  0   1 c1t0d0

第一行是自啓動以來的摘要信息,緊接着是每隔1秒鐘,採樣3次的一個示例。

參數說明:

?        r/s、w/s:每秒的讀寫次數;

?        kr/s、kw/s:每秒的讀寫字節數(KB爲單位);

?        wait:平均有多少事務在等待處理(隊列的長度);

?        actv:平均有多少事務正在處理中(已從隊列中刪除,但仍未完成);

?        svc_t:事務平均響應時間(毫秒爲單位),包括了等待時間和服務時間;

?        w%: 事務等待處理的時間百分比;

?        b%: 磁盤忙碌的時間百分比;

?        device:磁盤標識;

 

磁盤IO分析關注這幾個指標:

?        使用率: iostat –x所列出的磁盤忙百分比數值(b%),這一數值是磁盤忙時間的統計結果;

?        飽和度:iostat –x所列出的平均等待隊列長度(wait列)用於度量磁盤飽和度;

?        吞吐量:iostat –x所列出的KB/s的數值可以說明磁盤的活動情況,對於磁盤陣列,這是Solaris提供的唯一有意義的度量值;

?        I/O速率: 可通過iostat或Dtrace察看每秒鐘磁盤事務的數目,即IOPS;

?        I/O大小:使用由iostat –x所得的(kr/s+kw/s)/(r/s+w/s)表示平均事件大小,通過這個數值可以計算出磁盤事務大小。

四、處理器監控: mpstat
-bash-3.00# mpstat 2 3

CPU minf mjf xcal  intr ithr csw icsw migr smtx  srw syscl  usr sys wt idl

 0   26   0  17    12    6 200    2   55   6    0  2125   2   1   0  97

 2   21   0  25   400  211 101    1   42   8    0   959   2   1   0  98

 16  30   0   22   31   26  170   2   51    6   0  1892    2  1   0  97

 18  28   0   24   19   13  277   2   78    6   0  1840    2  1   0  97

CPU minf mjf xcal  intr ithr csw icsw migr smtx  srw syscl  usr sys wt idl

 0   27   0   4    12    8 198    1   54   3    0    76   0   0   0  99

 2    0   0  94   372  192  90    0   36   0    0    98   0   0   0  99

 16 403   0    2   30   24  134   1   36   16   0   872    4  2   0  95

 18  16   0    1   18   11  246   1   66    7   0   147    1  1   0  98

CPU minf mjf xcal  intr ithr csw icsw migr smtx  srw syscl  usr sys wt idl

 0    0   0   1    11    6 212    1   56   3    0   112   0   0   0 100

 2    0   0   7   371  204 100    0   49   7    0    77   0   0   0 100

 16  75   0   21   25   21  178   0   53    3   0   293    1  0   0  99

 18   0   0   15   17   12  262   0   81    4   0    86    0  0   0 100

 

mpstat用於查看處理其和處理器集的統計信息,其中stmx表示鎖資源競爭次數。

五、網絡監控: nestat
根據選項的不同,netstat可以以不同的格式顯示與網絡相關的數據統計:

(1)      查看當前的TCP/IP鏈接情況(選項n讓netstat不進行地址到域名的轉換)

-bash-3.00#netstat -n|more

 

TCP: IPv4

   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q    State

---------------------------------------- ----- ------ ----- ------ ----------

-

10.3.10.137.1521     10.3.13.128.2279     64624     0 49640      0 ESTABLISHE

D

10.3.10.137.1521     10.3.13.128.2283     65024     0 49640      0 ESTABLISHE

D

10.3.10.137.1521     10.3.13.68.1613      64921     0 49640      0 ESTABLISHE

D

10.3.10.137.32792    10.3.10.137.32778    49196     0 49152      0 CLOSE_WAIT

(2)      查看接口所屬的組播信息,和v選項使用可以顯示和源相關的組播成員信息:

-bash-3.00#netstat -gn

GroupMemberships: IPv4

InterfaceGroup                RefCnt

----------------------------- ------

lo0       224.0.0.1                 1

ce0       230.0.0.4                 1

ce0       228.1.2.98                1

ce0       224.0.0.1                 1

(3)      查看接口流量統計信息,如果和a選項一起使用會顯示邏輯接口的流量統計信息:

-bash-3.00#netstat -in

Name  Mtu Net/Dest      Address        Ipkts Ierrs Opkts  Oerrs Collis Queue

lo0   8232 127.0.0.0     127.0.0.1      3517619 0     3517619 0     0     0

ce0   1500 10.3.10.0     10.3.10.137    7720057 0     7448088 0     0     0

(4)      查看各種流使用內存的統計信息:

-bash-3.00#netstat -mn

streamsallocation:

                                        cumulative  allocation

                      current   maximum      total    failures

streams                   425       580     504785           0

queues                    947      1248     746402           0

mblk                     1228      3048    6753314           0

dblk                     1228      3448   29778955           0

linkblk                     5       169          23           0

syncq                      16        50         132           0

qband                       2       127           2           0

 

1164 Kbytesallocated for streams data

(5)      查看MAC地址表:

-bash-3.00#netstat -pn

Net to MediaTable: IPv4

Device   IP Address               Mask      Flags  Phys Addr

-------------------------- --------------- ----- ---------------

ce0    10.3.10.135          255.255.255.255       00:03:ba:9b:2d:36

ce0    10.3.10.227          255.255.255.255       00:1c:25:db:c5:6c

ce0    10.3.10.254          255.255.255.255       00:15:c6:9d:bd:3f

ce0    228.1.2.98           255.255.255.255       01:00:5e:01:02:62

ce0    192.168.21.124       255.255.255.255       00:21:5e:0c:04:fc

ce0    192.168.21.119       255.255.255.255       00:21:5e:0c:06:6e

ce0    123.0.1.10           255.255.255.255       00:1c:25:c1:31:51

ce0    10.3.10.119          255.255.255.255       00:14:4f:e6:2d:78

ce0    10.3.10.121          255.255.255.255       00:21:28:10:e8:2c

ce0    10.3.10.131          255.255.255.255       00:01:6c:98:a6:0d

(6)      查看當前路由條目:

-bash-3.00#netstat -rn

 

Routing Table:IPv4

  Destination           Gateway           Flags  Ref  Use   Interface

---------------------------------------- ----- ----- ------ ---------

10.3.10.0            10.3.10.137          U         1   501 ce0

224.0.0.0            10.3.10.137          U         1     0 ce0

default              10.3.10.254          UG        1   584

127.0.0.1            127.0.0.1            UH       201073002 lo0

(7)      查看每個協議的統計信息:

-bash-3.00#netstat -sn

 

RAWIP   rawipInDatagrams    =   16     rawipInErrors       =    0

        rawipInCksumErrs    =    0     rawipOutDatagrams   =    8

        rawipOutErrors      =    0

 

UDP     udpInDatagrams      =1230250    udpInErrors         =    0

        udpOutDatagrams     =1229831   udpOutErrors        =     0

 

TCP     tcpRtoAlgorithm     =    4     tcpRtoMin           =  400

        tcpRtoMax           = 60000     tcpMaxConn          =   -1

        tcpActiveOpens      =85429     tcpPassiveOpens     = 48280

        tcpAttemptFails     = 36718    tcpEstabResets      =   127

        tcpCurrEstab        =  142     tcpOutSegs          =9003530

        tcpOutDataSegs      =8716684    tcpOutDataBytes     =2592669218

        tcpRetransSegs      =   34     tcpRetransBytes     =  766

        tcpOutAck           =728312     tcpOutAckDelayed    =371032

        tcpOutUrg           =    0     tcpOutWinUpdate     =   19

        tcpOutWinProbe      =    1     tcpOutControl       =268430

        tcpOutRsts          = 37764     tcpOutFastRetrans   =    0

六、資源統計分析: sar
使用sar 命令執行以下任務:

■ 組織並查看有關係統活動的數據。

■ 根據特殊請求訪問系統活動數據。

■ 生成自動報告以測量和監視系統性能,並生成特殊請求報告以確定特定性能問題。

 

Solaris10可能默認沒有啓動sar服務,如果在使用sar命令時,提示不可用,可以首先啓動sar服務:

# svcadm enable sar

(1)       使用sar -a 命令顯示文件訪問操作統計信息

以下列表描述了sar -a 命令報告的操作系統例程的字段名和說明。

字段名
 說明
 
iget/s
 對不位於目錄名稱查閱高速緩存(DirectoryName Look-up Cache,DNLC) 中的inode 發出的請求數。
 
namei/s
 每秒搜索的文件系統路徑數。如果namei 在DNLC 中找不到目錄名稱,則調用iget以獲取文件或目錄的inode。因此,大多數igets 都是DNLC 遺漏的結果。
 
dirbk/s
 每秒發出的目錄塊讀取數。
 

 

對這些操作系統例程報告的值越大,內核訪問用戶文件時花費的時間越多。時間的長短將反映程序和應用程序使用文件系統的程度。  

 -a 選項有助於查看磁盤與應用程序的相關情況。

(2)       使用sar -b 命令顯示緩衝區活動統計信息

緩衝區用於高速緩存元數據。元數據包括inode、柱面組塊和間接塊。

字段名
 說明
 
bread/s
 從磁盤提交至高速緩存存儲區的每秒平均讀取數
 
lread/s
 每秒從高速緩存存儲區進行的平均邏輯讀取數
 
%rcache
 在高速緩存存儲區中找到的邏輯讀取的分數(100

%減去bread/s 與lread/s 之比)
 
bwrit/s
 每秒平均從高速緩存存儲區寫入磁盤的物理塊數

(512 塊)
 
lwrit/s
 每秒平均對高速緩存存儲區進行的邏輯寫入數
 
%wcache
 在高速緩存存儲區中找到的邏輯寫入的分數(100

%減去bwrit/s 與lwrit/s 之比)
 
pread/s
 每秒平均使用字符設備接口的物理讀取數
 
pwrit/s
 每秒平均使用字符設備接口的物理寫入請求數
 

(3)       使用sar -c 命令顯示系統調用統計信息

下表描述了-c 選項報告的系統調用類別。通常,讀取和寫入佔系統調用總數的一半。但是,該百分比會因系統所執行的活動而產生極大的變化。

字段名
 說明
 
scall/s
 每秒中所有類型的系統調用數,在具有4 到6 位用戶的系統中,通常每秒大約有30 個系統調用。
 
sread/s
 每秒的read 系統調用數。
 
swrit/s
 每秒的write 系統調用數。
 
fork/s
 每秒的fork 系統調用數,在具有4 到6 位用戶的系統中,每秒中大約有0.5 個該系統調用。如果正在運行Shell 腳本,此數字會增加。
 
exec/s
 每秒的exec 系統調用數。如果exec/s 除以fork/s 的結果大於3,請確定是否存在無效的PATH 變量。
 
rchar/s
 每秒由read 系統調用傳送的字符數(字節)。
 
wchar/s
 每秒由write 系統調用傳送的字符數(字節)。
 

(4)       使用sar -d 命令顯示磁盤活動統計信息

下表描述了-d 選項報告的磁盤設備活動。

字段名
 說明
 
device
 監視的磁盤設備的名稱。
 
 
%busy
 設備爲傳送請求提供服務所花費時間的百分比。
 
 
avque
 平均等待時間加上平均服務時間的總和。
 
 
r+w/s
 每秒對設備進行的讀取和寫入傳送數。
 
 
blks/s
 每秒傳送給設備的512字節塊的數量。
 
 
avwait
 傳送請求在隊列中空閒等待的平均時間,以毫秒爲單位。僅當隊列被佔用時才測量此時間。
 
 
avserv
 設備完成傳送請求所需的平均時間,以毫秒爲單位。對於磁盤而言,此值包括查找時間、旋轉延遲時間和數據傳送時間。
 
 

請注意,在隊列不爲空時測量隊列長度和等待時間。當%busy 很小時,如果隊列和服務時間很大,則可能表示系統進行週期性的努力,以確保將警報塊快速寫入磁盤。

(5)       使用sar -g 命令顯示平均頁出和內存釋放活

sar -g 命令的輸出可以明確指示是否需要更多內存。使用ps -elf 命令顯示page 守護程序使用的週期數。如果週期數很大,並且pgfree/s 和pgscan/s 字段的值也很大,則表明內存不足。

sar -g 命令還可表明是否回收inode 的速率過快而引起可重用頁丟失。

下表描述了-g 選項的輸出。

字段名
 說明
 
pgout/s
 每秒的頁出請求數。
 
ppgout/s
 每秒調出的頁的實際數量。單個頁出請求可能涉及多個頁的調出。
 
pgfree/s
 每秒放置在可用列表中的頁數。
 
pgscan/s
 守護程序每秒掃描的頁數。如果此值很大,則表明page 守護程序花費大量時間來檢查可用內存。此情況暗示,可能需要更多內存。
 
%ufs_ipf
 具有關聯的可重用頁的iget 從可用列表中取消的ufs inode 的百分比。這些頁面被刷新,並且不能由進程回收。因此,此字段表示具有頁面刷新的igets 的百分比。如果該值很大,則表明inode 的可

用列表頁面密集,並且可能需要增加ufs inode的數量。
 

(6)       使用sar -k 命令報告內核內存分配器(Kernel Memory Allocator, KMA) 的以下活動

下表描述了-k 選項的輸出:

字段名
 說明
 
sml_mem KMA
 在小型內存請求池中可用的內存量,以字節爲單位。在此池中,小型請求小於256 字節
 
alloc KMA
 已從其小型內存請求池向小型內存請求分配的內存量,以字節爲單位。
 
fail
 請求少量內存並失敗的請求數。
 
lg_mem KMA
 在大型內存請求池中可用的內存量,以字節爲單位。在此池中,大型請求介於512 字節到4千字節之間。
 
alloc KMA
 已從其大型內存請求池向大型內存請求分配的內存量,以字節爲單位。
 
fail
 請求大量內存並失敗的請求數
 
ovsz_alloc
 爲大於4 千字節的超大型請求分配的內存量。這些請求可通過頁面分配器來滿足。因此,不存在池。
 
fail
 因請求超大量內存而失敗的請求數。
 

(7)       用sar -m 命令報告進程間通信活動

除非運行使用消息或信號的應用程序,否則這些數字通常都爲零(0.00)。

以下列表描述了-m 選項的輸出:

字段名
 說明
 
msg/s
 每秒的消息操作(發送和接收)數
 
sema/s
 每秒的信號操作數
 

(8)       使用sar -p 命令報告頁入活動,其中包括保護和轉換錯誤

下表說明了通過-p 選項報告的統計信息:

字段名
 說明
 
atch/s
 每秒通過回收當前在內存中的頁來滿足的頁面錯誤數(每秒附加數)。例如從可用列表中回收無效的頁,以及共享其他進程當前正在使用的文本頁。例如,兩個或多個進程同時訪問同一程序文本。
 
pgin/s
 文件系統每秒接收頁入請求的次數。
 
ppgin/s
 每秒調進的頁數。單個頁入請求(例如軟件鎖定請求,請參見slock/s)或塊大小很大時可能涉及多個頁的調進。
 
pflt/s
 因保護錯誤引起的頁面錯誤數。保護錯誤實例表明非法訪問頁面和“寫複製”。通常,此數目主要來自於“寫複製”錯誤。
 
vflt/s
 每秒的地址轉換頁面錯誤數。這些錯誤稱爲有效性錯誤。當給定虛擬地址的有效進程表項不存在時,會發生有效性錯誤。
 
slock/s
 每秒內由要求實際I/O 操作的軟件鎖定請求引起的錯誤數。發生軟件鎖定請求的一個示例是,從磁盤向內存傳送數據時,系統鎖定了要接收數據的頁,因此其他進程無法請求和使用該頁。
 

(9)       使用sar-q 命令檢查隊列活動

以下列表描述了-q 選項的輸出:

字段名
 說明
 
runq-sz
 內存中等待CPU 以便運行的內核線程數。通常,此值應小於2。如果此值

持續很高,則表明系統可能是CPU 限制系統。
 
%runocc
 佔用分發隊列的時間百分比。
 
swpq-sz
 不再由sar 命令報告。
 
%swpocc
 不再由sar 命令報告。
 

如果%runocc 值較大(大於90%)並且runq-sz 值大於2,則表明CPU 負載較大,並且響應變慢。在此情況下,可能需要提供附加的CPU容量,才能獲得可接受的系統響應速度。

(10)   使用sar -r 命令報告當前未使用的內存頁數和交換文件磁盤塊數      

以下列表描述了-r 選項的輸出:

字段名
 說明
 
freemem
 在該命令採樣的時間間隔內可供用戶進程使用的平均內存頁數。頁面大小與計算機有關。
 
freeswap
 可用於頁交換的512 字節磁盤塊數
 

(11)   使用sar -u 命令顯示CPU使用率統計信息

沒有任何選項的sar 命令與sar-u 命令等效。在任意給定時刻,處理器都會處於繁忙或空閒狀態。繁忙時,處理器可能處於用戶模式或系統模式。空閒時,處理器可能在等待I/O 完成,或“靜止”而不

執行任何操作。

以下列表描述了-u 選項的輸出:

字段名
 說明
 
%usr
 列出處理器處於用戶模式的時間百分比
 
%sys
 列出處理器處於系統模式的時間百分比
 
%wio
 列出處理器空閒並等待I/O 完成的時間百分比
 
%idle
 列出處理器空閒並且未等待I/O 的時間百分比
 
%wio
 值越大,通常表示磁盤速率變慢。
 

(12)   使用sar -v 命令報告進程表、inode 表、文件表和共享內存記錄表的狀態

下表中描述了-v 選項的輸出。

字段名
 說明
 
proc-sz
 內核中當前正在使用或已分配的進程項(proc 結構)數。
 
inod-sz
 與內核中分配的最大inode 數相比,內存中的inode 總數。此數字不是嚴格的高水位標記。該數字可以溢出。
 
file-sz
 打開的系統文件表的大小。由於文件表的空間是動態分配的,因此sz 被給定爲0。
 
ov
 在每個表的採樣點之間發生的溢出。
 
lock-sz
 內核中當前正在使用或分配的共享內存記錄表項的數量。由於共享內存記錄表的空間是動態分配的,因此sz 被給定爲0。
 

(13)  使用sar -w 命令報告交換和切換活動

以下列表說明了sar -w 命令輸出的目標值和觀測值:

字段名
 說明
 
swpin/s
 每秒傳入內存的LWP 數。
 
bswin/s
 每秒爲換入傳送的塊數。


 
swpot/s
 每秒換出內存的平均進程數。如果該數字大於1,則可能需要增大內存。
 
bswot/s
 每秒爲換出傳送的塊數。
 
pswch/s
 每秒的內核線程切換數。
 

(14)  使用sar -y 命令監視終端設備活動

如果有多個終端I/O,則可使用此報告來確定是否存在任何錯誤行。

以下列表中定義了記錄的活動:

字段名
 說明
 
rawch/s
 每秒輸入字符數(原始隊列)
 
canch/s
 canon(規則隊列)每秒處理的輸入字符
 
outch/s
 每秒輸出字符數(輸出隊列)
 
rcvin/s
 每秒接收器硬件中斷次數
 
xmtin/s
 每秒傳送器硬件中斷次數
 
mdmin/s
 每秒調制解調器中斷次數
 

每秒調制解調器中斷次數(mdmin/s) 應接近於零。每秒的接收和傳送中斷次數(xmtin/s和rcvin/s)應分別小於或等於傳入或傳出字符數。否則,請檢查是否存在錯誤行。

(15)  使用sar -A 命令顯示所有選項的統計信息

此命令可提供更具全局性的透視。如果顯示來自多個單時間段的數據,則該報告會包括平均值

 

發佈了18 篇原創文章 · 獲贊 3 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章