2014-03-06 30 views
2

我想要在我的dreamhost服務器上運行sentry。 Dreamhost使用乘客wsgi來提供python框架,比如django。我能夠讓django應用程序運行。Can Sentry可以在乘客WSGI下運行(dreamhost)

我正在使用virtualenv並使用pip安裝哨兵,所以哨兵的所有代碼都位於virtualenv目錄下。爲哨兵提供的說明不使用startproject創建一個目錄,您可以將該目錄放置在passenger_wsgi.py文件的某處以查找。

哨兵網站給出了在Nginx和uWSGI下運行的程序的例子,但我僅限於(在這種情況下)給apache和乘客wsgi。

是否有可能在dreamhost的配置下運行sentry,如果是這樣的話,如何讓配置文件中的東西傳入,以使其工作。我已經能夠在本地啓動和哨兵進行交互,使用:

sentry --config=/home/user/.sentry/sentry.conf.py start 

,所以我知道,所有依賴存在於主機系統上

回答

3

確定它看起來像我要仔細考慮,我忘了從python的角度來看,文件wsgi.py(可在sentry目錄中找到)在作爲模塊導入時被調用爲sentry.wsgi。我被一個從pip下載的模塊以及如何訪問它的哨兵弄糊塗了。這是減少解決方案的工作原理:

passenger_wgsi.py

import sys, os 
INTERP = "/home/user/.virtualenv/sentry2/bin/python" 
if sys.executable != INTERP: 
    os.execl(INTERP, INTERP, *sys.argv) 
os.environ['SENTRY_CONF'] = "/home/user/.virtualenv/sentry2/sentry.conf.py" 

import sentry.wsgi 

相信與否,僅此而已。如果您查看virtualenv install下的sentry目錄中的wsgi文件,您將看到它會執行django.core.handlers.wsgi的所有導入操作,並啓動正確的應用程序。

+0

我試過同樣的,但我得到「AttributeError:'模塊'對象沒有屬性'應用程序'」,你有什麼想法可能是什麼問題? – DaneoShiga

相關問題