RabbitMQ / Céleri avec Django se bloque sur le retard / prêt / etc - Pas d'info journal utile

StackOverflow https://stackoverflow.com/questions/2141083

Question

Je viens donc de céleri et de configuration rabbitmq, créé mon utilisateur, configurer le serveur virtuel, cartographié l'utilisateur du serveur virtuel, et a couru le démon de céleri avec succès (ou alors je suppose)

(queuetest)corky@corky-server:~/projects/queuetest$ ./manage.py celeryd
 celery@corky-server v0.9.5 is starting.
 Configuration ->
. broker -> amqp://celery@localhost:5672/
. queues ->
. celery -> exchange:celery (direct) binding:celery
. concurrency -> 2
. loader -> celery.loaders.djangoapp
. logfile -> [stderr]@WARNING
. events -> OFF
. beat -> OFF

Celery has started.

J'ai créé un utilisateur de « céleri » parce que je ne me sentais pas très inventif dans ce cas.

Lorsque je tente de faire l'un des exemples simples dans le céleri docs:

>>> from tasks import add
>>> r = add.delay(2, 2)
>>> r
<AsyncResult: 16235ea3-c7d6-4cce-9387-5c6285312c7c>
>>> r.ready()
(hangs for eternity.)

Je vérifié la FAQ se demander quoi d'autre pourrait être et il m'a dit que c'est un bug commun en raison d'autorisations de l'utilisateur, donc j'ai vérifié triple ceux-ci, rien, fait un nouvel utilisateur, toujours rien. Si j'importer DjangoBrokerConnection de carrot.connection et obtenir l'information, il correspond à ce qui est dans mes paramètres de céleri. La FAQ a déclaré vérifier votre fichier journal.

Mon fichier rabbit.log est pas très utile dans cette situation, montrant simplement:

=INFO REPORT==== 26-Jan-2010::11:58:22 ===
accepted TCP connection on 0.0.0.0:5672 from 127.0.0.1:60572

=INFO REPORT==== 26-Jan-2010::11:58:22 ===
starting TCP connection <0.1120.0> from 127.0.0.1:60572

Et ainsi de suite. À ce stade, je suis à une perte de quoi d'autre mon problème pourrait être. Je suis en cours d'exécution Ubuntu Jaunty et installé RabbitMQ de apt-get.

Merci d'avance pour toute aide.

Était-ce utile?

La solution

Je viens fixé un bug vraiment moche qui ne se manifesterait pour les nouveaux utilisateurs qui ont causé cela. ( http://github.com/ask/celery/commit/a9c1316b15055b67ee3c38d294461fa82ed6d2b5 )

S'il vous plaît tirer de la branche principale à GitHub. Si cela ne fonctionne toujours pas probablement arrêter rabbitmq, supprimer le répertoire de base de données rabbitmq (généralement /var/lib/rabbitmq) et recommencer rabbitmq)

Vraiment désolé pour la gêne occasionnée. Le bug est arrivé parce que nous avons récemment changé le nom des consommateurs de routage l'option clé « clé de liaison », mais les bibliothèques AMQP utilisent encore routing_key et nous avons oublié de réécrire l'option.

Autres conseils

Pour ceux qui tombent sur ceci: il ne semble vraiment aider à retirer votre / var / lib / rabbitmq, même si le problème semble aller avec le céleri mise à jour. Je voyais beaucoup de manque de fiabilité et de l'imprévisibilité jusqu'à ce que je l'ai fait.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top