5

I have Celery and Flower running on my server and the tasks run just fine and are correctly registered and updated for me to monitor within the Flower UI, however, the worker status is allways Offline no matter if I restart the workers or Flower itself, and my log file (as given by the --log_file_prefix option) is empty, so no errors, nothing.

The only thing I can see is that the chrome dev tools show a Websocket Handshake error as shown below: flower error in chrome dev tools and a message CAUTION: Provitional headers are shown. enter image description here

I read that I need to make my server to respond with the Upgrade: websocket and Connection: upgrade headers for the Websocket handshake to be successful. I'm using apache, then I tried so by specifying the following in /etc/apache2/sites-enabled/mysite.conf:

Header set Upgrade "websocket"
Header set Connection "upgrade"

but it didn't work.

Does anyone have a clue on this error? Let me know if you need any more info.

Thanks!!

Gerard
  • 9,088
  • 8
  • 37
  • 52

2 Answers2

2

Gerard, check the kombu version.

I solved a similar problem upgrading kombu to version 3.0.21 (rel. 2014-07-07).

pip install kombu==3.0.21

I'm not sure it solves your problem but give it a try.

dcellai
  • 36
  • 1
  • Accepted cause, despite the websocket error is still present, this solves the `Offline` status issue I had, as stated in a recent issue in the project repo (which I didn't find before asking this): http://git.io/eBUqDw The websocket error seems to not have anything to do with the worker status – Gerard Jul 09 '14 at 14:13
  • 2
    @Gerard One more way to solve worker status is to upgrade to latest version of flower(0.8.0) – Chillar Anand Sep 05 '14 at 04:12
1

same behavior with celery: 4.0.2, redis: 2.10.5

solve it by update kombu and redis

pip install kombu --upgrade

pip install redis --upgrade
Echo Zeng
  • 61
  • 4