django-elasticsearch-debug-toolbar
django-elasticsearch-debug-toolbar copied to clipboard
Error with elasticsearch 8+
I believe elasticsearch refactored some of their internals and so this doesn't work any more.
I don't have a fix, unfortunately, but here's the traceback.
Exception in thread django-main-thread:
Traceback (most recent call last):
File "/home/john/.pyenv/versions/3.11.4/lib/python3.11/threading.py", line 1038, in _bootstrap_inner
self.run()
File "/home/john/.pyenv/versions/3.11.4/lib/python3.11/threading.py", line 975, in run
self._target(*self._args, **self._kwargs)
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/utils/autoreload.py", line 64, in wrapper
fn(*args, **kwargs)
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/core/management/commands/runserver.py", line 125, in inner_run
autoreload.raise_last_exception()
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/utils/autoreload.py", line 87, in raise_last_exception
raise _exception[1]
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/core/management/__init__.py", line 394, in execute
autoreload.check_errors(django.setup)()
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/utils/autoreload.py", line 64, in wrapper
fn(*args, **kwargs)
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/apps/registry.py", line 124, in populate
app_config.ready()
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/debug_toolbar/apps.py", line 22, in ready
for cls in DebugToolbar.get_panel_classes():
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/debug_toolbar/toolbar.py", line 133, in get_panel_classes
panel_classes = [
^
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/debug_toolbar/toolbar.py", line 134, in <listcomp>
import_string(panel_path) for panel_path in dt_settings.get_panels()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/utils/module_loading.py", line 30, in import_string
return cached_import(module_path, class_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/django/utils/module_loading.py", line 15, in cached_import
module = import_module(module_path)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/john/.pyenv/versions/3.11.4/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/john/.pyenv/versions/ecom/lib/python3.11/site-packages/elastic_panel/panel.py", line 9, in <module>
from elasticsearch.connection.base import Connection
ModuleNotFoundError: No module named 'elasticsearch.connection'
Same problem. Have to downgrade to 7, but this comes with it's own problems around versioning.