Tuesday, November 27, 2012

django/celery - celery status: Error: No nodes replied within time constraint

I'm trying to deploy a simple example of celery in my production server, I've followed the tutorial in the celery website about running celery as daemonhttp://docs.celeryproject.org/en/latest/tutorials/daemonizing.html#daemonizing, and I got the config file in/etc/default/celeryd

 1 # Name of nodes to start    2 # here we have a single node    3 CELERYD_NODES="w1"    4 # or we could have three nodes:    5 #CELERYD_NODES="w1 w2 w3"    6     7 # Where to chdir at start.    8 CELERYD_CHDIR="/home/audiwime/cidec_sw"    9    10 # Python interpreter from environment.   11 ENV_PYTHON="/usr/bin/python26"   12    13 # How to call "manage.py celeryd_multi"   14 CELERYD_MULTI="$ENV_PYTHON $CELERYD_CHDIR/manage.py celeryd_multi"   15    16 # # How to call "manage.py celeryctl"   17 CELERYCTL="$ENV_PYTHON $CELERYD_CHDIR/manage.py celeryctl"   18    19 # Extra arguments to celeryd   20 CELERYD_OPTS="--time-limit=300 --concurrency=8"   21    22 # Name of the celery config module.   23 CELERY_CONFIG_MODULE="celeryconfig"   24    25 # %n will be replaced with the nodename.   26 CELERYD_LOG_FILE="/var/log/celery/%n.log"   27 CELERYD_PID_FILE="/var/run/celery/%n.pid"   28    29 # Workers should run as an unprivileged user.   30 CELERYD_USER="audiwime"   31 CELERYD_GROUP="audiwime"   32    33 export DJANGO_SETTINGS_MODULE="cidec_sw.settings"

but if I run

celery status

in the terminal, i got this response:

Error: No nodes replied within time constraint

I can restart celery via the celeryd script provided inhttps://github.com/celery/celery/tree/3.0/extra/generic-init.d/

/etc/init.d/celeryd restart  celeryd-multi v3.0.12 (Chiastic Slide)  > w1.one.cloudwime.com: DOWN  > Restarting node w1.one.cloudwime.com: OK  

I can run

python26 manage.py celeryd -l info

and my tasks in django run fine, but if I let the daemon do its work i dont get any results, don't even errors in /var/log/celery/w1.log

I know that my task has been registered because I did this from celery import current_app def call_celery_delay(request): print current_app.tasks run.delay(request.GET['age']) return HttpResponse(content="celery task set",content_type="text/html") and I get a dictionary in wich my task appear

{'celery.chain': <@task: celery.chain>, 'celery.chunks': <@task: celery.chunks>, 'celery.chord': <@task: celery.chord>, 'tasks.add2': <@task: tasks.add2>, 'celery.chord_unlock': <@task: celery.chord_unlock>,'tareas.tasks.run': <@task: tareas.tasks.run>, 'tareas.tasks.add': <@task: tareas.tasks.add>, 'tareas.tasks.test_two_minute': <@task: tareas.tasks.test_two_minute>, 'celery.backend_cleanup': <@task: celery.backend_cleanup>, 'celery.map': <@task: celery.map>, 'celery.group': <@task: celery.group>, 'tareas.tasks.test_one_minute': <@task: tareas.tasks.test_one_minute>, 'celery.starmap': <@task: celery.starmap>}

but besides that I get nothing else, no result from my task, no error in the logs, nothing. Can anyone tell me what can be wrong? You are my only hope...

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/django-users/-/mO6feEMUlrgJ.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

No comments:

Post a Comment