簡體   English   中英

是否可以追蹤芹菜任務的開始時間?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM