flask框架:簡單的監控服務器的系統DEMO


  前段時間應領導要求,需要開發一套服務端的資源監控的腳本,通過python腳本監控服務器的資源狀態,將監控數據錄入到數據庫表,而后直接分析入庫的統計結果生成趨勢圖表以供參考!大概花了一個多星期把整個系統寫完,但是總覺得無法達到實時的監控確實是一個很大遺憾。因此在同事的的推薦下初步學習了一下flask框架,不過百度了好多文章,大部分文章和DEMO都無法滿足我得需求。最后,通過CSDN小黑鵝的博客找到一點線索(博客地址如下),在他博客基礎山整合了一下,自己寫了一個學習的DEMO,幫助跟我一樣的兄弟能夠快速應用到公司項目上去。

https://blog.csdn.net/Daisy_zye/article/details/84560555

一、需要安裝的包

1、功能相關

a、psutil

python system and process utilities(python系統和進程實用程序),監控服務器的資源(CPU\內存\磁盤\網絡等)、進程的相關信息。個人認為比較全說明文檔:

https://psutil.readthedocs.io/en/latest/#

b、os

處理文件和目錄

2、web框架

flask及flask-bootstrap

二、前端界面

這塊個人不太懂bootstrap框架,照搬原博主的內容

1、導航欄:基模板

    超鏈接在jinja中的兩種用法
        html文件:href="index.html"
        視圖函數:href="/index/"

推薦使用/index/形式,根據路由找到對應html,避免更新文件名稱或位置引起的大量修改。

 

 

   bootstrap將界面寬度分為12分,可以用過col來控制控件的位置,例如:col-lg-10意為占用10等分寬的界面,col-lg-offset-1意為從左側偏移一位。

 

 

 2、其他信息:block
    在基模板中配置block newcontent

 

 

 三、視圖函數

調用os和psutil庫獲取到服務器后端的監控數據,存儲到cpu內,在render_template中根據key=value形式傳入變量,在html中使用{{key}}來顯示傳入的變量。

 

 

 

DEMO中監控CPU、系統信息、磁盤掛載信息、系統盤(sda)、數據盤(sdb\sdc等)、網絡流量監控、內存消耗最大排序的前10個進程。

四、效果圖

 

 

最后放上demo的git代碼:https://github.com/testPython2018/get_svrInfo_demo

 


免責聲明!

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



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