4
我試圖按照celery tutorial,但當我運行python manage.py celeryd
時遇到問題:RabbitMQ給出了「訪問被拒絕,登錄被拒絕用戶」錯誤:我的RabbitMQ服務器(安裝在我的開發箱上的虛擬機)不會讓我的用戶登錄。當試圖按照芹菜教程
我讓我的Django的管理控制檯上執行以下操作:
[ERROR/MainProcess] AMQP Listener: Connection Error: Socket closed. Trying again in 2 seconds...
,這表明在我rabbit.log
文件我的RabbitMQ服務器上:
exception on TCP connection <0.5814.0> from $DJANGO_BOX_IP
{channel0_error,starting,{amqp,access_refused,"login refused for user '$CONFIGURED_USER'",'connection.start_ok'}}
我仔細檢查我的用戶,權限和虛擬主機信息,他們似乎都匹配。任何幫助疑難解答非常感謝。
UPDATE:繼@asksol我得到以下回溯建議:
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/carrot/connection.pyc in connection(self)
118 return
119 if not self._connection:
--> 120 self._connection = self._establish_connection()
121 self._closed = False
122 return self._connection
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/carrot/connection.pyc in _establish_connection(self)
131
132 def _establish_connection(self):
--> 133 return self.create_backend().establish_connection()
134
135 def get_backend_cls(self):
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/carrot/backends/pyamqplib.pyc in establish_connection(self)
110 insist=conninfo.insist,
111 ssl=conninfo.ssl,
--> 112 connect_timeout=conninfo.connect_timeout)
113
114 def close_connection(self, connection):
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/amqplib/client_0_8/connection.pyc in __init__(self, host, userid, password, login_method, login_response, virtual_host, locale, client_properties, ssl, insist, connect_timeout, **kwargs)
138 self.wait(allowed_methods=[
139 (10, 20), # secure
--> 140 (10, 30), # tune
141 ])
142
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/amqplib/client_0_8/abstract_channel.pyc in wait(self, allowed_methods)
88 method_sig, args, content = self.connection._wait_method(
---> 89 self.channel_id, allowed_methods)
90
91 if content \
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/amqplib/client_0_8/connection.pyc in _wait_method(self, channel_id, allowed_methods)
196 while True:
197 channel, method_sig, args, content = \
--> 198 self.method_reader.read_method()
199
200 if (channel == channel_id) \
$MY_VIRTUAL_ENV/lib/python2.6/site-packages/amqplib/client_0_8/method_framing.pyc in read_method(self)
213 m = self.queue.get()
214 if isinstance(m, Exception):
--> 215 raise m
216 return m
217
IOError: Socket closed
我正在運行Django。從Django shell執行上述操作會給我一個相當長的回溯並導致以下錯誤:'IOError:Socket closed'。我會用回溯更新問題。 – 2009-12-23 12:36:34
好吧,在配置中必須有一些錯誤的東西,主機,虛擬主機,權限,用戶名,密碼等等。查看我的答案的更新以獲得更多故障排除 – asksol 2009-12-23 16:16:14
謝謝。登錄信息錯誤:我在密碼設置中獲得了我的虛擬主機值。 – 2009-12-25 00:27:37