歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 7 個實例教你使用 sar 命令生成CPU、內存和輸入輸出端口的報告

7 個實例教你使用 sar 命令生成CPU、內存和輸入輸出端口的報告

日期:2017/2/28 13:55:21   编辑:Linux教程

SAR是系統活動報告(System Activity Report)英文單詞的首字母縮寫。正如它的名字所表示的那樣,SAR是一個在Unix和Linux操作系統中用來收集、報告和保存CPU、內存、輸入輸出端口使用情況的命令。SAR命令可以動態產生報告,也可以把報告保存在日志文件中。

在本文中,我們將討論在CentOS 7和RHEL 7系統中使用SAR的不同案例。如果你沒有安裝該軟件包,可以使用下面一條命令來安裝它。

[root@localhost ~]# yum install sysstat

啟動sadc(system activity data collector)服務(sysstat),這樣報告就會被寫入到日志文件“/var/log/sa/saDD”中並且已經存在的文檔將會被歸檔。DD表示當前日期。
[root@localhost ~]# systemctl start sysstat
[root@localhost ~]# systemctl enable sysstat

它每隔10分鐘收集一次數據並且每天形成一份報告。下圖中的crontab文件負責收集和生成報告。

下圖中的是SysStat的Config文件。(sar命令)

案例1:每兩秒鐘動態生成5次CPU的使用情況
[root@localhost ~]# sar 2 5
Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) Monday 26 October 2015 _x86_64_ (2 CPU)

01:43:55 EDT CPU %user %nice %system %iowait %steal %idle
01:43:57 EDT all 0.00 0.00 0.25 0.00 0.00 99.75
01:43:59 EDT all 0.00 0.00 0.00 0.00 0.00 100.00
01:44:01 EDT all 0.00 0.00 0.25 0.00 0.00 99.75
01:44:03 EDT all 0.00 0.00 0.25 0.25 0.00 99.50
01:44:05 EDT all 0.00 0.00 0.00 0.00 0.00 100.00
Average: all 0.00 0.00 0.15 0.05 0.00 99.80
[root@localhost ~]#

如果 %I/Owait 這一項是一個超過0的長時間值,那麼我們就要考慮是否在輸入輸出系統方面存在瓶頸(比如硬盤或者網絡)。

案例2:使用-o選項保存sar命令的輸出結果:
[root@localhost ~]# sar 2 5 -o /tmp/data > /dev/null 2>&1
[root@localhost ~]#

使用“sar -f ”輸出結果:
[root@localhost ~]# sar -f /tmp/data

案例3:使用-r選項生成內存的使用情況報告

-r選項在sar命令中被用以生成內存的使用報告。
[root@localhost ~]# sar -r 2 5

kbcommit和%commit列的數據包括了內存和交換區使用量的總和。

案例4:用-B選項生成分頁統計報告
[root@localhost ~]# sar -B 2 5

報告裡,majflts/s主要顯示從硬盤交換區載入物理內存時的異常,如果這個值變高,那麼我們可以說系統目前僅僅使用了內存(RAM)。
%vmeff 表示每秒掃描的頁面數,如果說當它的值是100%時是正常情況,它是30%以下的時候就可以認為虛擬內存存在一些問題。0值表示在那個時候沒有任何一個頁面被掃描。

案例:5 使用-d選項生成塊設備使用情況報告

-d 選項在sar命令中被用以顯示塊設備的狀態報告。在 -d 後面加上 -p (pretty-print)選項可以增強 dev 列的可讀性,如下圖所示:
[root@localhost ~]# sar -d -p 2 4

案例6:用-n生成網絡使用情況報告

-n選項在sar命令中被用來生成網絡使用情況的統計報告。下面是語法規則:
# sar -n {keyword} or {ALL}
[root@localhost ~]# sar -n ALL

案例7:用-f讀sar日志文件

我們前面已經討論了sar的日志文件是保存在“/var/log/sa/saDD”裡的。使用-f選項可以查看日志文件。
[root@localhost ~]# sar -r -f /var/log/sa/sa26

Copyright © Linux教程網 All Rights Reserved