系統工程師的一項煩惱的問題,就是使用者或者開發程式的單位,
對系統運作效能的埋怨.
若是現在正在執行中,大家可能都很熟悉top指令,可以馬上看到
系統運作的情況.這指令很常被使用,所以本系列就不介紹了.
昨天介紹的sysstat,大家也許會有疑問.
看來也就回報其中一部分資訊,為何要提出來介紹呢?
因為sysstat是一組指令以及相關配套的cron設定,
可以協助系統工程師,找出之前的系統效能狀況.
這是很重要的.
因為當接到埋怨時,往往是類似這樣的情境.
"昨天晚上的月結帳作業,跑的很慢!我們開發的程式應該沒有問題,是不是你們系統
昨晚在跑備份,把資源咬住了...bala bala"
一個黑鍋丟過來了.
別擔心害怕!地球上有許多前輩也遇過這類的血淚控訴.
為了證明自己的清白,sysstat是系統工程師的好幫手.
Linux系統安裝時,不是default安裝的.
要記得裝上.
我們來看一下,裝好sysstat後,會有哪些檔案.
/etc/cron.d/sysstat
/etc/rc.d/init.d/sysstat
/etc/sysconfig/sysstat
/etc/sysconfig/sysstat.ioconf
/usr/bin/cifsiostat
/usr/bin/iostat
/usr/bin/mpstat
/usr/bin/pidstat
/usr/bin/sadf
/usr/bin/sar
/usr/lib64/sa/sa1
/usr/lib64/sa/sa2
/usr/lib64/sa/sadc
一些像是man的東西,我把他省略掉.
我們先來看一下 /etc/sysconfig/sysstat
裡面的內容:
# sysstat-9.0.4 configuration file.
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=28
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
# Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
這是default的版本.
將保留28天的紀錄. 會放在 /var/log/sa 下
再來看一下 /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A
可以看到說明,sa1每10分鐘會被cron喚醒,採樣一次.
sa2會在23:53時,產生每日的總和報告.
紀錄檔是放在 /var/log/sa/ 下.
我們先來把 /etc/sysconfig/sysstat 裡的
HISTORY=28
改為
HISTORY=30
SADC_OPTIONS="-S DISK"
改為
SADC_OPTIONS="-S ALL"
明天將繼續探討.