롤 아주 간단합니다. 누군가가 나를 도울 수 있기를 바랍니다.
from celery.bin.camqadm import camqadm
camqadm('queue.purge', queue_name_as_string)
나는 아직도 내가 큐에 대한 작업을 처리하기 위해 다시 celeryd을 실행하는 데 필요한 퍼지 후 가야를 정화하기 전에 celeryd을 중지해야이 유일한 문제. 성공하면이 질문이 업데이트됩니다.
Celeryd를 중지하고 대기열을 제거한 다음 다시 시작하는 것이 좋지 않으면 해결해주십시오. 나는 실제로 용어를 사용하고 있음을 알고 있습니다. 왜냐하면 실제로 그 작업이 종료되기를 원하기 때문입니다.
celery amqp queue.purge <QUEUE_NAME>
하는 장고를 들어 manage.py 파일에서 시작해야합니다 :
kill_command = "ps auxww | grep 'celeryd -n twitter_save' | awk '{print $2}' | xargs kill -9"
subprocess.call(kill_command, shell=True)
camqadm('queue.purge', 'twitter_save')
rerun_command = "/home/samos/Software/virt_env/twittersyncv1/bin/python %s/manage.py celeryd -n twitter_save -l info -Q twitter_save" % settings.PROJECT_ROOT
os.popen(rerun_command+' &')
send_task("socialreport.tasks.twitter_save")
덕분에 셀러리 3.1 – Gourneau
유효한 AMQP URL을 가리 키기 위해'--broker = ... '인수를 사용해야했습니다. 어떤 이유로 Django settings.py에서 구성된 값이 선택되지 않았습니다 . 아마도 내 설정의 특질. – RichVel
@RichVel 당신은'./manage.py'에서 그것을 실행하고 있습니까? 브로커 url 인자는'settings.py' 파일에서 가져와야합니다. – Hassek