利用Python實現一個簡單的系統監控圖表
作為運維人員,想必大家肯定都做過這樣的事情:為了監控系統資源使用情況,開了若干個窗口,來回切換看輸出:

只要我切得夠快,性能異常點就逃不過我的眼睛!
這個時候你要是有個監控工具自然是很好的,例如我們美創的監控報警工具onekeeper,畫面又好看,數據也準確,還是實時更新的。

然而好用的東西都是要花錢的,今天我們就利用python實現一個簡單的動態監控圖表。
1. 系統環境需求
我們這次要寫的腳本主要基于Psutil與Matplotlib兩個模塊。
首先,我們這里選擇python3環境,安裝這兩個模塊:
Pip install psutil matplotlib

表示安裝成功。
2. Psuitl模塊的使用
顧名思義,psutil = process and system utilities,它不僅可以通過一兩行代碼實現系統監控,還可以跨平臺使用,支持Linux/UNIX/OSX/Windows等。
它有許多函數功能,能夠輕松實現獲取系統運行的進程和系統利用率(包括CPU、內存、磁盤、網絡等)信息,示例如下:
獲取cpu使用率:

獲取內存使用率:

獲取磁盤IO信息:

寫成一個函數:

3. Matplotlib的使用
Matplotlib 可能是 Python 2D-繪圖領域使用最廣泛的套件。它能讓使用者很輕松地將數據圖形化,并且提供多樣化的輸出格式。
我們以cpu使用率圖為例:

我們可以得到一張監控系統cpu使用率的動態圖表。

4. 多子圖制作
同樣的,我們將其他兩個性能指標也取出來,并做成同一個畫布下不同的子圖:

最后我們通過python得到了一個簡單的系統性能動態監控圖表:

Psutil模塊還有其他很多獲取系統信息的函數,是python系統運維方面必備的模塊,Matplotlib作為應用最廣的畫圖模塊之一,也有許多其他讓你的圖表更加好看好用的使用方法。