Celery: النتائج التي تم إرجاعها من المجموعة لها اسم_المهمة = لا شيء

تم إنشاؤها على ١٣ فبراير ٢٠١٥  ·  3تعليقات  ·  مصدر: celery/celery

عندما أحاول الوصول إلى اسم المهمة من نتيجة جاءت من المجموعة ، لا يتم إرجاع أي شيء

بايثون (ق): 3.3.6 ، 3.4.2
الكرفس: 3.1.17

المشروع / الكرفس

from celery import Celery

app = Celery('proj',
             broker='amqp://',
             backend='amqp://',
             include=['proj.tasks'])

# Optional configuration, see the application user guide.
app.conf.update(
    CELERY_TASK_RESULT_EXPIRES=3600,
)

if __name__ == '__main__':
    app.start()

بروج / مهام

from proj.celery import app

@app.task
def add(x, y):
    return x + y


@app.task
def mul(x, y):
    return x * y

run_add.py

from celery import group

from proj import tasks

import logging

log = logging.getLogger(__name__)
logging.basicConfig(level=logging.DEBUG)

results = group([
    tasks.mul.s(4,4),
    tasks.add.s(3,3)
]).delay()

while results.waiting():
    pass

if results.successful():
    for result in results:
        log.info('ID: {}, name: {}'.format(result.task_id, result.task_name))

نتيجة:

INFO:__main__:ID: c2fa4f30-0691-41ee-8f7b-e7dcbf32d09a, name: None
INFO:__main__:ID: f545bfa0-2ad7-40b3-9d05-561d4c1eba7e, name: None

التعليق الأكثر فائدة

ask ألا توجد طريقة للاستيلاء على Task_name الآن؟ لدينا نقطة نهاية تُستخدم لعرض بيانات المهمة على الويب ، ونود ، في ظل AsyncResult ، تسجيل اسم المهمة.

ال 3 كومينتر

يبدو أن الشيء نفسه يحدث أيضًا مع السلاسل أيضًا.
هناك أيضًا منشور Stackoverflow حول هذا الموضوع:

احصل على اسم المهمة من AsyncResult عند إرسال السلاسل في الكرفس

يعد اسم Task_name مجالًا محليًا ، ولم يعد مستخدمًا لأي شيء بعد الآن ، وأعتقد أنه يجب إزالته تمامًا.

النتيجة المرسلة لا تحتوي في الواقع على حقل اسم ، فقد تم استخدامها في وقت ما لتسلسل الواجهة الخلفية مع النتيجة عند استخدام المخلل ، ولكن يتم إنجاز ذلك بشكل مختلف الآن.

ask ألا توجد طريقة للاستيلاء على Task_name الآن؟ لدينا نقطة نهاية تُستخدم لعرض بيانات المهمة على الويب ، ونود ، في ظل AsyncResult ، تسجيل اسم المهمة.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات