I tried starting flower based on the example in the README:
celery flower -A myapp --address=127.0.0.1 --port=5555
However, that immediately generated a ton of errors like:
[I 170807 19:39:10 mixins:224] Connected to sqs://lskjdflskfjldsjslfdsjflk:**@localhost//
[E 170807 19:39:11 events:123] Failed to capture events: 'drain_events() got an unexpected keyword argument 'callback'', trying again in 1 seconds.
[E 170807 19:39:11 connection:1225] 403 Forbidden
[E 170807 19:39:11 connection:1226] <?xml version="1.0"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>AWS.SimpleQueueService.PurgeQueueInProgress</Code><Message>Only one PurgeQueue operation on myproject-local-e4b4c15a-a2ff-3bc6-83af-f0a8bff7b11d-reply-celery-pidbox is allowed every 60 seconds.</Message><Detail/></Error><RequestId>bcef21c4-e2a9-575f-958f-73c61ef6b94a</RequestId></ErrorResponse>
[E 170807 19:39:11 connection:1225] 403 Forbidden
[E 170807 19:39:11 connection:1226] <?xml version="1.0"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>AWS.SimpleQueueService.PurgeQueueInProgress</Code><Message>Only one PurgeQueue operation on myproject-local-ec254deb-8498-3d97-bba5-112c9ef21e12-reply-celery-pidbox is allowed every 60 seconds.</Message><Detail/></Error><RequestId>24d71187-5cea-5432-8b71-4385a0b58464</RequestId></ErrorResponse>
[E 170807 19:39:11 connection:1225] 403 Forbidden
[E 170807 19:39:11 connection:1226] <?xml version="1.0"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>AWS.SimpleQueueService.PurgeQueueInProgress</Code><Message>Only one PurgeQueue operation on myproject-local-f89b9d6a-c100-3d7a-a5cc-3570f8649e0d-reply-celery-pidbox is allowed every 60 seconds.</Message><Detail/></Error><RequestId>0210a779-c84d-5911-ab83-f57b34124cea</RequestId></ErrorResponse>
[E 170807 19:39:11 connection:1225] 403 Forbidden
[E 170807 19:39:11 connection:1226] <?xml version="1.0"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>AWS.SimpleQueueService.PurgeQueueInProgress</Code><Message>Only one PurgeQueue operation on myproject-local-e4b4c15a-a2ff-3bc6-83af-f0a8bff7b11d-reply-celery-pidbox is allowed every 60 seconds.</Message><Detail/></Error><RequestId>270257fb-87ea-56bf-ae08-05f97bb5d039</RequestId></ErrorResponse>
[E 170807 19:39:11 gen:833] Multiple exceptions in yield list
Traceback (most recent call last):
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/tornado/gen.py", line 828, in callback
result_list.append(f.result())
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/concurrent/futures/_base.py", line 422, in result
return self.__get_result()
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/concurrent/futures/thread.py", line 62, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/celery/app/control.py", line 116, in active_queues
return self._request('active_queues')
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/celery/app/control.py", line 81, in _request
timeout=self.timeout, reply=True,
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/celery/app/control.py", line 436, in broadcast
limit, callback, channel=channel,
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/pidbox.py", line 321, in _broadcast
channel=chan)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/pidbox.py", line 360, in _collect
self.connection.drain_events(timeout=timeout)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/connection.py", line 301, in drain_events
return self.transport.drain_events(self.connection, **kwargs)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/transport/virtual/base.py", line 961, in drain_events
get(self._deliver, timeout=timeout)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/utils/scheduling.py", line 56, in get
return self.fun(resource, callback, **kwargs)
File "/home/myuser/git/myproject/.env/local/lib/python2.7/site-packages/kombu/transport/virtual/base.py", line 999, in _drain_channel
return channel.drain_events(callback=callback, timeout=timeout)
TypeError: drain_events() got an unexpected keyword argument 'callback'
I'm using SQS, hosted on Amazon, as my message broker. Why does flower appear to be trying to purge my message queues? Does flower not support SQS?
@chrisspen - nope. https://github.com/mher/flower/issues/687#issuecomment-309300946
It be a good idea to explicitly throw a NotImplementedError instead of implicitly trying to support it and throwing these confusing tertiary errors.
Most helpful comment
It be a good idea to explicitly throw a NotImplementedError instead of implicitly trying to support it and throwing these confusing tertiary errors.