У меня есть задача, которую я начинаю с apply_async
, чтобы я мог передавать дополнительные данные. Однако у меня возникают проблемы с доступом к этим данным в celery signals
. Например, это пример задачи, как я ее называю и сигнал task_prerun
.
@task
def export_olx(user_id, course_id, language):
pass
export_olx.apply_async(args=(user_id, course_id, language), **{'some_key':'some_value'})
@task_prerun.connect(sender=export_olx)
def export_olx_prerun(sender, **kwargs):
pass
Внутри моего сигнала task_prerun
я могу получить доступ к аргументам, используя sender.request.args
, однако когда я пытаюсь использовать sender.request.kwargs
, я получаю пустой словарь вместо дополнительных данных, которые я передал {'some_key':'some_value'}
Любая помощь в том, как я могу получить доступ к этим данным, будет очень благодарна.