2015-10-18 57 views
0

我使用烏鴉從我的芹菜工作記錄到哨兵。我發現,每當我使用django日誌記錄系統登錄到哨兵時,每次更新可能需要幾分鐘(但日誌成功)。如果我從日誌配置中刪除哨兵,它是即時的。python烏鴉從芹菜工人使用django日誌記錄時超時

我試圖恢復到直接使用烏鴉通過:

import raven 
client=raven.Client("DSN") 
client.captureMessage("message") 

這個作品與工人裏面沒有延遲。

但是,如果我嘗試使用Django的特定客戶,而不是作爲延遲存在如下:

from raven.contrib.django.raven_compat.models import client 
client.captureMessage("message") 

它通常是在2有點分鐘,所以它看起來像一個暫停,但操作成功。

延誤加起來,使我的工作隊列不可靠。

回答

1

如果你使用默認的芹菜工作者模型,通常應該只是工作。如果你使用的東西可能不那麼真實。

默認情況下,Python客戶端使用線程化工作器。意思是,在實例化時,它創建一個隊列和一個線程來異步處理消息。如果這種情況以各種方式發生,可能會導致問題(即預分叉),或者如果您使用的是gevent而不是修補線程。

您可以嘗試改變傳輸是同步的,確認這是相關的:

https://docs.getsentry.com/hosted/clients/python/transports/