[英]Is it possible to track the start time of a celery task?
我正在嘗試獲取在Celery中啟動特定任務的時間戳。 這可能嗎? 我在下面嘗試過,但是無法正常工作。 我正在將Celery 3.0.19和mongodb用作flask的代理。
class GenericTask(Task):
abstract = True
startTime = unicode(datetime.datetime.now())
@celery.task(name="tasks.create_provider", base=GenericTask)
def create_provider(name):
with app.test_request_context():
Provider.create(name=name)
然后再..
async = create_provider.apply_async((name,), startTime=unicode(datetime.datetime.now()))
task = {'id': async.task_id,
'operation': 'operation',
'status': async.status,
'startTime': async.startTime,
'expiryTime': 'expiryTime'}
在工作人員使用任務之前,可以使用“任務發送”事件來跟蹤任務。 只需追加到您的芹菜配置:
CELERY_SEND_TASK_SENT_EVENT = True
芹菜或芹菜花應顯示帶有時間戳的“任務已發送”事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.