我正在使用芹菜和django芹菜。我定義了一個我想測試的定期任務。是否可以手動從shell運行週期性任務,以便查看控制檯輸出?如何手動從shell中運行芹菜定期任務?
50
A
回答
66
您是否嘗試過從Django shell運行任務?您可以使用任務的.apply
方法來確保它在急切和本地運行。
假設任務在Django應用程序myapp
在tasks
子模塊稱爲my_task
:
$ python manage.py shell
>>> from myapp.tasks import my_task
>>> eager_result = my_task.apply()
結果實例具有相同的API通常AsyncResult
類型,不同的是結果總是急切和本地計算和.apply()
方法將阻塞,直到任務運行完成。
5
我想你需要打開兩個shell:一個用於執行Python/Django shell中的任務,另一個用於運行celery worker
(python manage.py celery worker
)。正如前面的答案所述,您可以使用apply()
或apply_async()
運行任務我編輯了答案,因此您沒有使用棄用的命令。
+1
現在,已棄用manage.py celeryd:http://stackoverflow.com/a/23921568/1459594 – rschwieb
相關問題
- 1. 如何獲得芹菜定期運行任務的結果?
- 2. 芹菜定期任務不啓動
- 3. 芹菜定期任務不執行
- 4. 在芹菜任務中運行postgres VACUUM
- 5. 用django和芹菜運行定期任務
- 6. 如何動態地添加/刪除定期任務,芹菜(celerybeat)
- 7. 如何使運行與芹菜週期性任務的子任務?
- 8. 如何從先前的芹菜任務中產生芹菜任務?
- 9. 芹菜定期任務爲asnyc上Django
- 10. 芹菜和Django的定期任務
- 11. 芹菜定期任務不工作
- 12. Django的芹菜 - 運行計劃任務
- 13. 沒有工人運行芹菜任務
- 14. 執行其他芹菜任務不工作的芹菜週期性任務
- 15. 我如何安排在每月的特定日期運行的芹菜任務?
- 16. 如何鏈芹菜任務
- 17. 芹菜如何實際執行任務?
- 18. 芹菜任務
- 19. 芹菜任務
- 20. 芹菜任務不執行
- 21. (芹菜):在特定的工作人員中運行任務?
- 22. 僅在一臺機器上運行芹菜週期性任務
- 23. Django芹菜週期性任務沒有運行(Heroku)?
- 24. 如何獲得芹菜所有任務和週期性任務
- 25. 如何從shell外部運行任務
- 26. Python芹菜 - 如何在其他任務中調用芹菜任務
- 27. 芹菜 - 在另一任務結束時安排定期任務
- 28. 芹菜週期性任務沒有得到執行任務.py
- 29. 運行更多任務的芹菜任務
- 30. 運行芹菜任務時無法導入任務
如何爲金字塔項目做同樣的事情?該目錄結構將是這樣的: /myproject的=> celeryconfig.py, setup.py, development.py, /視圖/ celerytasks => mycelerytask.py 。現在我在這裏要運行「mycelerytask。 py'(這是週期性的任務)從命令行手動。你能幫我嗎? – Workonphp
@Workonphp不幸的是,我並不熟悉金字塔,所以我不知道芹菜是如何與金字塔結合的。 (請注意,我上面的解決方案是Django特定的,需要Django在所有Django項目目錄中生成的manage.py'腳本。)對不起。 –