首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >芹菜队列似乎没有注册我的任务

芹菜队列似乎没有注册我的任务
EN

Stack Overflow用户
提问于 2010-10-20 05:58:08
回答 1查看 3K关注 0票数 4

我正在使用Django和芹菜与RabbitMQ进行通信。我已经注册了所有任务,并将它们放入设置文件的CELERY_IMPORTS元组中。当我运行一个任务时,我得到“未注册”的错误信息。

代码语言:javascript
复制
# tail -f /var/log/celeryd.log 
    . logfile -> /var/log/celeryd.log@INFO
    . events -> OFF
    . beat -> OFF
    . tasks ->
    . apps.contact.tasks.emailContact
    . apps.declaration.tasks.MailChimpSignup
    . apps.questions.tasks.emailQuestionTask
    . queued_storage.tasks.SaveToRemoteTask
[2010-10-19 17:53:44,958: INFO/PoolWorker-1] child process calling self.run()
[2010-10-19 17:53:44,971: WARNING/MainProcess] celery@nolabels.org has started.


[2010-10-19 17:54:03,962: ERROR/MainProcess] Unknown task ignored: "Task of kind 'apps.declaration.tasks.MailChimpSignup' is not registered, please make sure it's imported.": {'retries': 0, 'task': 'apps.declaration.tasks.MailChimpSignup', 'args': [], 'eta': None, 'kwargs': {'email': u'abc123@asdfd.com'}, 'id': '919c6030-70b1-43e6-87f5-907fa0f52c08'}

下面是我的任务定义:

代码语言:javascript
复制
class MailChimpSignup(Task):
    def run(self, email, **kwargs):
        """
        This will register the declaration signer on mail chimp.
        """
        logger = self.get_logger(**kwargs)
        logger.info("Processed mailchimp signup for %s" % email)
        chimp = chimpy.Connection(settings.MAILCHIMP_API_KEY)

        try:
            chimp.list_member_info(settings.MAILCHIMP_LIST_ID, email)
        except ChimpyException:
            try:
                x = chimp.list_subscribe(
                        settings.MAILCHIMP_LIST_ID,
                        email,
                        {
                        #    'FNAME': self.first_name,
                        #    'LNAME': self.last_name,
                        },
                        email_type='HTML',
                        double_optin = False,
                )
            except ChimpyException:
                return False
        return True
tasks.register(MailChimpSignup)
EN

回答 1

Stack Overflow用户

发布于 2010-10-22 17:30:41

真奇怪。它看起来确实有正确的名字。

您是否可以尝试手动为该任务分配名称?

代码语言:javascript
复制
@task(name="MailChimpSignup")
def ...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3973139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档