進程管理工具htop/glances/dstat的使用
linux進程管理工具: pstree, ps, pidof, pgrep, top, htop, glance, pmap, vmstat, dstat, kill, job等等
何謂?htop?
Htop是一款運行于Linux系統監控與進程管理軟件,用于取代Unix下傳統的top。與top只提供最消耗資源的進程列表不同,htop提供所有進程的列表,并且使用彩色標識出處理器、swap和內存狀態。
用戶一般可以在top無法提供詳盡系統信息的情況下選擇安裝并使用htop。比如,在查找應用程序的內存泄漏問題時。與top相比,htop提供更方便、光標控制的界面來殺死進程。
htop用C語言編寫,采用了ncurses庫。htop的名稱源于其作者的名字。
?
我接下來只介紹三個比較高大上的工具
?
htop:
安裝htop:
yum –y install htop
htop 是一個 Linux 下的交互式的進程瀏覽器,top的增強版
選項:
-d #: 刷新時間間隔
-u USERNAME: 僅顯示指定用戶的進程
-s COLUMN: 以指定的字段進行排序
??
交互式命令:
u: 僅顯示指定用戶的進程
s: 跟蹤選定進程發起的系統調用
l: 跟蹤選定進程打開的文件
t: 顯示進程樹
a: 設定cpu親緣性(將選定的進程綁定在某CPU上)
對于htop的具體用法,我想大家可以多查找一下相關文檔,然后結合man手冊做進一步的了解。
htop的顯示效果圖:
?
?
glances:
什么是 Glances?
Glances 是一個由 Python 編寫,使用 psutil 庫來從系統抓取信息的基于 curses 開發的跨平臺命令行系統監視工具。通過 Glances,我們可以監視 CPU,平均負載,內存,網絡流量,磁盤 I/O,其他處理器和文件系統空間的利用情況。
??
Glances 是一個用來監視 GNU/Linux 和 FreeBSD 操作系統的 GPL 授權的自由軟件。
??
Glances 同時也提供了很多實用的選項。其中我們能夠在配置文件見到的一項主要的功能就是設置關鍵值及相應的標簽(careful[小心], warning[警告] 和 critical[嚴重]),然后她會自動幫我們用不同顏色標出系統達到某個瓶頸的信息。
??
Glances 主要功能
CPU 信息(用戶的相關應用, 系統核心程序和空閑程序)
??
總內存信息,包括了物理內存,交換空間和空閑內存等等
??
之前的 1 分鐘、5 分鐘和 15 分鐘平均的 CPU 負載
??
網絡鏈接的下行和上行速度
??
處理器總數,以及其活動狀態
??
硬盤 I/O 相關(讀寫)速度詳情
??
當前掛載設備的磁盤使用情況
??
高 CPU 和內存使用的進程名,和相關應用的位置
??
在底部顯示當前日期和時間
??
將消耗最高系統資源的進程用紅色標出
??
??
交互式命令:有許多交互式命令來定義glances的顯示信息,以及排序方式等;
h: 顯示幫助
??
C/S模式下運行glances命令:
服務模式:
glances -s -B ipADDR(s是開啟服務模式)
??
IPADDR:自己監聽的本機地址
??
客戶端模式:
glances -c IPADDR
??
IPADDR: 遠程服務器監聽的地址
glances [-bdehmnrsvyz1] [-B bind] [-c server] [-C conffile] [-p port] [-P passWord] [--password] [-t refresh] [-f file] [-o output]
??
-b: 以Byte為單位顯示網卡數據速率;
-d: 關閉磁盤I/O模塊
-f /path/to/somewhere: 設置輸出文件的位置及其格式;
-o {HTML|CSV}
-m: 禁用mount模塊
-n: 禁用網絡模塊
-t #: 指定刷新時間間隔
-1:每個CPU的數據單獨顯示
假如我想把本機的glances抓取的參數顯示到web上,我可以通過設置nginx
1.首先編譯安裝nginx
2. cd /usr/local/nginx 切換到nginx目錄下看看有沒有html
3. glances -o HTML -f /usr/local/nginx/html
4.在web上輸入比如我的虛擬機的ip地址是172.16.249.247,那么輸出 172.16.249.247/glances.html
?
?
?
?
?
?
?
?
?
dstat:支持插件
?
dstat是一個用來替換 vmstat,iostat netstat,nfsstat和ifstat這些命令的工具, 是一個全能系統信息統計工具. 與sysstat相比, dstat擁有一個彩色的界面, 在手動觀察性能狀況時, 數據比較顯眼容易觀察; 而且dstat支持即時刷新, 譬如輸入dstat 3, 即每三秒收集一次, 但最新的數據都會每秒刷新顯示. 和sysstat相同的是, dstat也可以收集指定的性能資源, 譬如 dstat -c 即顯示CPU的使用情況.
??
??
dstat [-afv] [options..] [delay [count]]
-c :cpu是也,顯示CPU系統占用,用戶占用,空閑,等待,中斷,軟件中斷等信息
??
-d :disk是也,顯示磁盤讀寫數據大小
??
-g, --page page 顯示頁面使用情況
??
-i -int enable interrupt stats 啟用中斷數據
??
-l : load average 顯示系統負載情況
??
-m :memory 顯示內存使用情況
??
-p :PRocess 顯示進程狀態
??
-r, --io
-s, --swap
-t, --time
-y, --sys
--aio: 顯示異步io統計數據
--ipc: ipc相關的信息
--raw: raw socket
--tcp: tcp socket
--udp: udp socket
--socket: raw, tcp, udp
--unix: unix sock
??
--top-cpu:顯示最占用CPU的進程
--top-bio:顯示最占用block IO的進程
--top-mem: 顯示最耗費內存的進程
--top-io:最占用IO的進程
?
?
?
?
?
?
新聞熱點
疑難解答