edwin警示和監控平台開源了(python源碼)

來源:互聯網
上載者:User

標籤:blog   http   使用   io   strong   檔案   資料   for   

簡單介紹一下edwin

edwin是一個警示和監控平台, 可以使用它監控任意東西, 如有異常(分為警告級和嚴重級), 可以發出警示. 可以自訂警示的通知方式, 比如郵件/簡訊/電話. 另外, 它提供一個web UI,  上, 能以dashboard形式展現監控指標的狀態.

edwin對於監控項目的組織形式, 由小到大是:  check item -> pagelet ->page -> dashboard.  另外,可以為 check item指定一個或多個 team 來負責.  這樣靈活的組織形式, 使得edwin非常適合管理大量監控項目

 

為啥開源?

edwin是我曆時半年的成果, 當然單從功能上講, 其實用不了這麼長時間來開發. 主要是我對代碼做了很多次重構了, 不斷琢磨我認為python項目的best practice. 今天開源出來, 希望有更多的python愛好者能從中學到點什麼. 如果你的這個項目感興趣, 歡迎fork或PR, 如果喜歡, 請打個star. 

項目地址: https://github.com/harryliu/edwin

 

edwin同時也是我所有python項目的模版項目

對, 它同時也是我所有python項目的模版項目, 看看下面的特性, 就知道它是一個很全面的項目, 適應性做的也不錯.  我的新項目基本上都是在edwin基礎上做必要裁剪.

 

特性有:

  • 它是一個console和web application的組合體. 
  • console部分同時支援jython和python. web部分需要python.
  • 包含了bat和sh模版指令碼, 協助啟動python程式.
  • web application這塊使用了flask架構.
  • 使用了flask blueprint來分割不同的web 模組.
  • 包含了一些web api的設計.
  • web端支援CherryPy部署, 當然也支援其它wsgi伺服器.
  • 前端基於bootstrap, 同時考慮了對於IE的支援. 

 

亮點或best practice有: 

  • 它有比較好的logging處理方式, 包括log檔案存放位置, rotate機制, 允許多進程同時寫入
  • 它的資料庫處理模組, 同時支援jython/python, 同時支援console/web application, 並且不用擔心安全執行緒問題.
  • 它沒有使用sqlalchemy, 而是使用了我的pyDbRowFactory架構, 可以發揮你的SQL水平,避免了ORM架構效能上的overhead 


有圖有真相

dashboard 頁面能看到所有的監控item的匯總.

 

UnitTest分頁, 能看到該page下所有的監控item的情況. 


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.