Django Debug Toolbar

Django Debug Toolbar - незаменимый инструмент для отладки и оптимизации Django приложений.

Установка

1# Установка пакета
2pip install django-debug-toolbar
1# Или через Poetry
2poetry add django-debug-toolbar

Настройка

 1# settings.py
 2INSTALLED_APPS = [
 3    'debug_toolbar',
 4]
 5
 6MIDDLEWARE = [
 7    'debug_toolbar.middleware.DebugToolbarMiddleware',
 8]
 9
10INTERNAL_IPS = [
11    '127.0.0.1',
12]
13
14# urls.py
15if settings.DEBUG:
16    import debug_toolbar
17    urlpatterns = [
18        path('__debug__/', include(debug_toolbar.urls)),
19    ] + urlpatterns

Анализ SQL запросов

Toolbar показывает:

  • Количество выполненных SQL запросов
  • Время выполнения каждого запроса
  • Дублирующиеся запросы
  • Проблемы N+1

Дополнительные панели

 1# settings.py
 2DEBUG_TOOLBAR_PANELS = [
 3    'debug_toolbar.panels.versions.VersionsPanel',
 4    'debug_toolbar.panels.timer.TimerPanel',
 5    'debug_toolbar.panels.settings.SettingsPanel',
 6    'debug_toolbar.panels.headers.HeadersPanel',
 7    'debug_toolbar.panels.request.RequestPanel',
 8    'debug_toolbar.panels.sql.SQLPanel',
 9    'debug_toolbar.panels.staticfiles.StaticFilesPanel',
10    'debug_toolbar.panels.templates.TemplatesPanel',
11    'debug_toolbar.panels.cache.CachePanel',
12    'debug_toolbar.panels.signals.SignalsPanel',
13    'debug_toolbar.panels.logging.LoggingPanel',
14    'debug_toolbar.panels.redirects.RedirectsPanel',
15]

FAQ

Q: Почему toolbar не отображается?
A: Проверь INTERNAL_IPS и убедись, что DEBUG=True.

Q: Можно ли использовать в production?
A: Нет, только для разработки.