macOS系統(tǒng)部署Cabot開發(fā)環(huán)境

Cabot是什么

Cabot是GitHub上面的一個基于Django框架的開源項(xiàng)目,主要功能是服務(wù)的監(jiān)控和告警。

Cabot目前提供如下監(jiān)控類型:

  • ICMP Ping監(jiān)控
  • HTTP接口監(jiān)控
  • Graphite Metrics監(jiān)控

Cabot提供插件式的告警方式,目前已有的告警插件有slack、sms、telephone、email等等。開發(fā)者可以開發(fā)自己的告警插件以滿足自身需求。

安裝依賴

Cabot默認(rèn)使用PostgreSQL數(shù)據(jù)庫,我們可以替換為MySQL,修改數(shù)據(jù)庫連接URI即可。

下面記錄在安裝依賴的Python包中遇到的問題。

openssl

在安裝mysql-python、cryptography等一些依賴openssl的python包時(shí),會報(bào)錯無法找到ssl庫。解決辦法如下:

brew info openssl
For compilers to find this software you may need to set:
    LDFLAGS:  -L/usr/local/opt/openssl/lib
    CPPFLAGS: -I/usr/local/opt/openssl/include
    
export LDFLAGS=-L/usr/local/opt/openssl/lib
export CPPFLAGS=-I/usr/local/opt/openssl/include
pip install mysql-python

openldap

在安裝python-ldap包的時(shí)候報(bào)錯找不到sasl.h頭文件。python-ldap官方下載頁面有如下解釋:

Set up a suitable development environment by running xcode-select --install. After that you can install directly from PyPI.

下面記錄其它工具的安裝。

npm

npm documentation

download node.js then install node & npm

# install lessc
npm install -g less
# install coffee script
npm install -g coffee-script

Honcho

Cabot項(xiàng)目使用Foreman管理環(huán)境以及啟動應(yīng)用。Foreman是用Ruby寫的,不想安裝Ruby環(huán)境的話,可以使用Python語言移植版本Honcho

pip install honcho

啟動開發(fā)環(huán)境

# 創(chuàng)建數(shù)據(jù)庫
# 假設(shè)conf/development.env中配置的數(shù)據(jù)庫名為cabot
create database cabot default charset=utf8;
# 創(chuàng)建表
honcho -e conf/development.env run python manage.py migrate
honcho -e conf/development.env run python manage.py migrate cabotapp
# 創(chuàng)建超級用戶
honcho -e conf/development.env run python manage.py createsuperuser
# 啟動
honcho -e conf/development.env -f Procfile.dev start

Cabot項(xiàng)目源碼閱讀

Cabot源碼值得一讀,對Django Web開發(fā)有很大的指導(dǎo)意義。在閱讀過程中,收獲不少,下面是一些相關(guān)技術(shù)點(diǎn):

  • django rest框架
  • django-polymorphic,與django的contenttypes框架有關(guān)
  • model的具體繼承、抽象繼承、proxy繼承
  • Celery
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,835評論 6 427
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,021評論 25 709
  • GitHub 上有一個 Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣。awesome-p...
    若與閱讀 19,321評論 4 417
  • 2017.8.16 --著:江涵小子 丁環(huán)小寶 壯志豪情千萬里 兄弟情深穿古今 得遇今生有丁環(huán) 化名小雪和君涵
    江涵少年閱讀 395評論 0 0
  • 看著偌大的辦公室最近空空的,我有點(diǎn)彷徨,想著是不是我的時(shí)間也該到了,可是作為一個成年人,更作為一個負(fù)責(zé)任的...
    夢在雨巷閱讀 491評論 0 2

友情鏈接更多精彩內(nèi)容