タスクのオブジェクトを取得し、その結果、タスクの名前を取得するにはどうすればよいですか?AsyncResult
id
たとえば、2 つのタスクをチェーンで起動するとします。
>>> task_chain = (task_A.s() | task_B.s())
>>> async_result = task_chain.apply_async()
次のような内部メソッドを使用してid
、task_Bとその結果としてtask_Aを取得できます。_parents()
>>> async_result.id
>>> 2ed28e84-0673-4491-a56f-c5ab8dfb5725
>>> async_result._parents()[0].id
>>> e793f4dc-5110-4f57-8f98-8caa48c40528
ただし、task_name を取得しようとすると、何も返されません。
>>> async_result.task_name
>>> async_result._parents()[0].task_name
なぜこうなった?これはおそらくバグでしょうか?task_name
単一のタスクを送信すると、 の属性がAsyncResult
完全に正常に機能し、適切なタスク名が返されることに気付きました。
AsyncResult オブジェクトからタスクの名前を取得する他の方法はありますか?
よろしくお願いします。
PS私はすでに同様の質問をここで見つけましたが、誰も実用的で実用的な解決策を提案していないようです.
アップデート
どうやらこれで壁にぶち当たったようです。まったく同じ問題について、チェーンではなくグループに関係するという違いについて、github にオープン チケットがあります。