를 사용하는 동안 발생하는 다음과 같은 오류가 점점 :형식 오류 내가 <a href="https://github.com/celery/celery" rel="nofollow">Celery 2.6.0rc5</a>을 사용하고 셀러리 2.6.0rc5
[2012-06-22 23:01:42,016: ERROR/MainProcess] Unrecoverable error: TypeError('handle_event() takes exactly 3 arguments (1 given)',)
Traceback (most recent call last):
File "/home/bmh/celery/celery/worker/__init__.py", line 350, in start
component.start()
File "/home/bmh/celery/celery/worker/consumer.py", line 369, in start
self.consume_messages()
File "/home/bmh/celery/celery/worker/consumer.py", line 435, in consume_messages
readers[fileno](fileno, event)
File "/home/bmh/kombu/kombu/transport/redis.py", line 636, in handle_event
self._callbacks[queue](message)
File "/home/bmh/kombu/kombu/transport/virtual/__init__.py", line 461, in _callback
return callback(message)
File "/home/bmh/kombu/kombu/messaging.py", line 482, in _receive_callback
self.receive(decoded, message)
File "/home/bmh/kombu/kombu/messaging.py", line 454, in receive
[callback(body, message) for callback in callbacks]
File "/home/bmh/celery/celery/worker/consumer.py", line 397, in on_task_received
[callback() for callback in on_task_callbacks]
TypeError: handle_event() takes exactly 3 arguments (1 given)
I pulled both kombu and celery from git just moments ago, 그리고 12.04 LTS redis-server
(2 우분투에서이 작업을 시도하고있다 : 2.2.12-1build1)를 브로커로 설치합니다.
celeryconfig.py
는)
입니다 :
는BROKER_URL = "redis://localhost:6379/0"
BACKEND_URL = BROKER_URL
CELERY_RESULT_BACKEND = "redis"
CELERY_REDIS_HOST = "localhost"
CELERY_REDIS_PORT = 6379
CELERY_REDIS_DB = 0
내 근로자 (worker.py
)입니다 :
#!/usr/bin/python2.7
from celery import Celery
celery = Celery()
celery.config_from_object('celeryconfig')
@celery.task(ignore_result=True)
def atest(data):
print "Got data: %s" % data
if __name__ == "__main__":
celery.start()
나는 $ ./worker.py worker
와 작업자를 실행하고 파이썬에서 다음과 같이 나는 노동자를 호출 할 때 셸 :
import worker
worker.atest("abc")
작업자는 th 내가 $ ./worker.py shell
및 실행 "수입 다시마를 실행할 때, 덧붙여
[2012-06-22 23:01:43,025: WARNING/MainProcess] File "/home/bmh/kombu/kombu/utils/eventio.py", line 95, in unregister
[2012-06-22 23:01:43,025: WARNING/MainProcess] self._epoll.unregister(fd)
[2012-06-22 23:01:43,025: WARNING/MainProcess] ValueError
[2012-06-22 23:01:43,025: WARNING/MainProcess] :
[2012-06-22 23:01:43,026: WARNING/MainProcess] I/O operation on closed epoll fd
; 오류 위 전자는 궁극적으로 근로자가 다음에 종료로 끝나는 더 이상 오류를보고 kombu. 버전는 "내가 최신 버전으로 이해 2.2.2을보고합니다. 또한,하지만 다시마를 업데이트하여 해결 한 듯 someone else encountered this 협조 할 수있다.
을이 정말 간단한 셀러리 프로젝트로 내가 당장 어떤 도움을 감사하게 될 것입니다 위치에 난처한 상황에 빠진 조금 오전, 나는 셀러리 완전히 새로운 오전, 상상할 수있는, 이것은 개발 버전입니다.
읽기 주셔서 감사합니다.
작동하지 않습니다 : - (... 나는 그것이 나에게주는 thrid 단계 마지막'역 추적 (가장 최근의 호출) 할 때 distutils.core 수입에서 에 파일 "setup.py", 라인 (10)을, 설치, 확장, find_packages # noqa ImportError : 이름을 가져올 수 없습니다 find_packages '.. 무엇이 문제입니까? –
@ Rania-Boy :이 문제를 해결 한 지 2 년이 지났기 때문에 나는 당신의 상황에 어떤 문제가 있을지 몰랐다. 이제 데비안 버전 만 사용합니다. 아마도이 질문을 참조하는 새로운 질문을 시작하고 싶을 것입니다. 그냥 생각. 건배. –