利用Python實現一個簡單的系統監控圖表

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

利用Python實現一個簡單的系統監控圖表


只要我切得夠快,性能異常點就逃不過我的眼睛!

這個時候你要是有個監控工具自然是很好的,例如我們美創的監控報警工具onekeeper,畫面又好看,數據也準確,還是實時更新的。


利用Python實現一個簡單的系統監控圖表


然而好用的東西都是要花錢的,今天我們就利用python實現一個簡單的動態監控圖表。


1. 系統環境需求

我們這次要寫的腳本主要基於Psutil與Matplotlib兩個模塊。


首先,我們這裡選擇python3環境,安裝這兩個模塊:

Pip install psutil matplotlib


利用Python實現一個簡單的系統監控圖表


表示安裝成功。


2. Psuitl模塊的使用


顧名思義,psutil = process and system utilities,它不僅可以通過一兩行代碼實現系統監控,還可以跨平臺使用,支持Linux/UNIX/OSX/Windows等。


它有許多函數功能,能夠輕鬆實現獲取系統運行的進程和系統利用率(包括CPU、內存、磁盤、網絡等)信息,示例如下:


獲取cpu使用率:


利用Python實現一個簡單的系統監控圖表


獲取內存使用率:


利用Python實現一個簡單的系統監控圖表


獲取磁盤IO信息:


利用Python實現一個簡單的系統監控圖表


寫成一個函數:


利用Python實現一個簡單的系統監控圖表


私信小編01 領取精心整理的電子手三佰本

3. Matplotlib的使用


Matplotlib 可能是 Python 2D-繪圖領域使用最廣泛的套件。它能讓使用者很輕鬆地將數據圖形化,並且提供多樣化的輸出格式。


我們以cpu使用率圖為例:


利用Python實現一個簡單的系統監控圖表


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


利用Python實現一個簡單的系統監控圖表


4. 多子圖製作


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


利用Python實現一個簡單的系統監控圖表


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


利用Python實現一個簡單的系統監控圖表


Psutil模塊還有其他很多獲取系統信息的函數,是python系統運維方面必備的模塊,Matplotlib作為應用最廣的畫圖模塊之一,也有許多其他讓你的圖表更加好看好用的使用方法。這篇文章僅作拋磚引玉之用,以下為這兩個模塊的官方文檔鏈接。


分享到:


相關文章: