1
私はRedisベースのジョブを管理するためにpython-rqを使用していますが、私のワーカーが現在処理しているジョブを特定したいと考えています。python-rqからすべての現在のジョブを取得します
のpython-RQは、接続のための「現在のジョブ」を見つけるために、get_current_job機能を提供していますが、:
- 私はこの作業を取得し、
- することはできません私は本当にすべてのリストが欲しいです現在キューからの仕事ではなく、この接続のためににすべて労働者がすべてのキューを処理されているジョブの。ここで
は(常にNoneを返します)私のコードです:
from rq import Queue, get_current_job
redis_url = os.getenv('REDIS_FOO')
parse.uses_netloc.append('redis')
url = parse.urlparse(redis_url)
conn = Redis(host=url.hostname, port=url.port, db=0, password=url.password)
q = Queue(connection=conn)
get_current_job(connection=conn)
誰でも取得する方法上の任意のアイデア、上記のコードを取得するには、もっと重要なのは、仕事だけにしてくださいを持っていますこの接続のすべてのキューにあるすべてのワーカーからの現在のすべてのジョブのリスト
ご返信ありがとうございます。しかし、私が間違っていない限り、q.job_idsとq.jobsの両方は、ステータスが「開始」(これは私の後ろ)のジョブではなく、「キューに入れられた」ステータスを持つジョブだけを返します...? –
@AndrewMackieが更新されました。 – gushitong
グシトンに感謝しています。ありがとうございます。 –