mr-canoehead / network_performance_monitor

Network Performance Monitor - a portable tool for troubleshooting performance issues with home networks
GNU General Public License v3.0
84 stars 21 forks source link

Empty/blank dashboard web page caused by eventlet/gunicorn version incompatibility: workaround #29

Closed mr-canoehead closed 3 years ago

mr-canoehead commented 3 years ago

The latest version of the eventlet async worker library (0.31.0) seems to be incompatible with gunicorn, this causes the dashboard web page to show blank/empty tabs. The workaround is to remove eventlet 0.31.0 and install an older version of this module (0.30.2).

Symptoms: no data shown on the dashboard web page, the following errors appear in the syslog:

Error: class uri 'eventlet' invalid or not found:

ImportError: cannot import name 'ALREADY_HANDLED' from 'eventlet.wsgi'...

Workaround: remove eventlet 0.31.0, install eventlet 0.30.2 using the following commands:

sudo pip3 uninstall eventlet
sudo pip3 install eventlet==0.30.2
sudo reboot

The dashboard web page should now display as expected.

mr-canoehead commented 3 years ago

I made the following changes to resolve this issue:

With these changes the eventlet module is no longer used. I tested the changes on a freshly installed system (Raspberry Pi 4B with Raspberry Pi OS).