linux高級監控atop的使用


一、centos安裝

sudo yum -y install epel-release.noarch
sudo yum -y install atop 
sudo systemctl enable atop

#! 此行是說明: 暫時把搜集信息的頻率改為 60 一次 (默認是 600 秒)。
sudo vi /etc/sysconfig/atop
# interval (default 10 minutes)
INTERVAL=60

#! 然后啟動 atop
sudo systemctl start atop

 

 

開啟 atopacct 功能,這個功能可以記錄兩個 sample 之間啟動但離開的進程。 做法如下:

$ sudo systemctl enable atopacct 
$ sudo systemctl start atopacct

 

二、用法介紹

 

PRC:該列展示整個系統的性能狀況;

  1. sys:過去10s所有的進程在內核態運行的時間總和
  2. usr:過去10s所有的進程在用戶態的運行時間總和
  3. #proc:進程總數
  4. #trun:過去10s轉換的進程數
  5. #zombie:過去10s僵死進程的數量
  6. #exit:在10s采樣周期期間退出的進程數量

CPU: cpu列展示了服務器的CPU整體的一個狀態信息,包括內核和用戶所占的比例、處理中斷所占的比例、CPU的處於空閑下比例(這里是100%*cpu核心數,CPU有時候也會因為由於磁盤性能問題出現等待的空閑)

  1. sys:cpu在處理進程時處於內核態的時間所占的比例
  2. usr:cpu在處理進程時處於用戶態的時間所占的比例
  3. irq:cpu在處理進程的中斷請求所占的實際比例
  4. idle:cpu處於空閑狀態下的時間比例(除了本身空閑,還有比如等待磁盤io的情況下也會處於空閑狀態)

cpu:每個核心的狀態信息,和總的CPU信息一樣,每列加起來的總和就是總的CPU的狀態信息。

CPL:cpl也反應了服務器整體的性能,展示信息包括進程等待隊列數,分別從過去1分鍾、5分鍾、15分鍾的采樣信息。

  1. avg1:過去1分鍾進程等待隊列數
  2. avg5:過去5分鍾進程等待隊列數
  3. avg15:過去15分鍾進程等待隊列數
  4. csw(context swapping):上下文交換次數
  5. intr(interrupt):中斷發生的次數
  6. numcpu:cpu的核心數

mem:該列主要展示內存的使用信息。

  1. tot:物理內存總量
  2. free:空閑內存的大小(不能單單從這個字段就判斷內存不足,還需要參考free -m中的-/+ buffers/cache:free因為這塊的內容隨時就可以拿過來使用,還可以從是否有使用Swap來判斷是否內存不足)
  3. cache:用於頁緩存的內存大小
  4. dirty:內存中的臟頁大小
  5. buff:用於文件緩存的內存大小
  6. slab:系統內核占用的內存大小

SWP:交換空間使用情況

  1. tot:交換空間總量
  2. free:交換空間剩余空間總量

PAG列:虛擬內存分頁情況

  1. swin:換入內存頁數
  2. swout:換出內存頁數

LVM/DSK:每個分區信息以一列來進行展示

  1. busy:磁盤忙時所占比例
  2. read、KiB/r 、MBr/s:每秒讀的請求數和請求的kb、mb數
  3. write、KiB/w 、MBr/w:每秒寫的請求數和請求的kb、mb數
  4. avq:磁盤平均隊列長度(根據實際的監控該列好像是磁盤平均請求數avgrq)
  5. avio:磁盤的平均io時間

 

NET:展示了傳輸層(TCP/UDP)、網絡層(ip)、網絡接口的網絡傳輸信息。

transport:傳輸層(TCP/UDP)的數據輸入輸出的展示,例如在服務器的內部進程之間的數據傳輸就是在傳輸層展示,以為還不需要往下通過網絡進行傳輸。

network:網絡層(ip)的數據輸入輸出的展示;

eth0:默認的網絡接口的數據輸入輸出的展示,也就是通過etho的ip的數據傳輸的展示,

  1. sp:網卡的帶寬(1000M)
  2. pcki:傳入的數據包的大小
  3. pcko:傳出的數據包的大小
  4. si:每秒傳入的數據大小
  5. so:每秒傳出的數據大小
  6. coll(collisions):每秒的沖突數
  7. mlti(MULTICAST):每秒的多路廣播的數量
  8. erri/erro:每秒輸入輸出的錯誤數
  9. drpi/drpo:每秒的輸入輸出的丟包數

lo:通過127.0.0.1網絡接口的數據傳輸的數據展示,參數和上面的eth0是一樣的

 

進程列

進程列展示了每個進程在過去10S內的數據

m模式:內存狀態模式

SYSCPU:過去10s內進程處於內核模式占用的CPU時間

USRCPU:過去10S進程處於用戶模式占用的CPU時間

VSIZE:過去10S進程占用的虛擬空間大小

RSIZE:過去10S進程占用的內存空間大小

PSIZE:過去10S進程占用的頁大小

VGROW:過去10S進程增長的虛擬空間大小

RGROW:過去10S進程增長的內存大小

SWAPSZ:過去10S進程使用交換空間的大小。

MEM:過去10S進程占用內存百分比

d模式:磁盤狀態模式

RDDSK:過去10S進程讀磁盤的數據量
WRDSK:過去10S進程寫磁盤的數據量
DSK:過去10S進程所占磁盤的百分比
CMD:進程名 

p模式:進程狀態模式,同一個名稱的進程顯示一列,根據進程名進行分組顯示

NPROCS:相同名稱的進程數量

其它的參數上面已經有列出

v模式:線程狀態模式

u模式:用戶模式

根據用戶進行分組顯示

g模式:標准模式

s:進程當前的狀態,包括:s(sleeping),R(runing)等

atop的相關文件

/etc/atop:目錄保存的是atop的配置文件
/etc/rc.d/init.d/atop:atop的啟動文件
/etc/cron.d/atop:atop的定時任務文件,默認是每天0點開始
/var/log/atop:atop日志文件,默認是每天0點開始會產生當天的一個日志文件,然后可以通過atop -r file 查看信息,但是沒有找到自動播放的的功能,只能通過輸入b顯示一個指定的時間的信息,可以寫個循環來實現
/usr/bin/atop:atop命令目錄

#如:讀取13點到17點的監控
atop -r atop_20160510 -b 13:00 -e 17:00 

最后:

 在atop的展示頁面也可以輸入m(內存)、p(進程)、u(用戶)、d(磁盤)、c(進程運行的代碼)、v(線程) 進行頁面切換。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM