django-debug-toolbar is a tool sets to display various debug information about the current request and response in Django.
ref:
https://github.com/django-debug-toolbar/django-debug-toolbar
Install
$ pip install \
django-debug-toolbar \
django-debug-toolbar-line-profiler \
django-debug-toolbar-template-profiler \
django-debug-toolbar-template-timings \
django-debug-panel \
memcache-toolbar \
pympler \
git+https://github.com/scuml/debug-toolbar-mail
ref:
https://github.com/dmclain/django-debug-toolbar-line-profiler
https://github.com/node13h/django-debug-toolbar-template-profiler
https://github.com/orf/django-debug-toolbar-template-timings
https://github.com/recamshak/django-debug-panel
https://github.com/ross/memcache-debug-panel
https://pythonhosted.org/Pympler/django.html
https://github.com/scuml/debug-toolbar-mail
Python 3
https://github.com/lerela/django-debug-toolbar-line-profile
Configuration
in urls.py
from django.conf import settings
from django.conf.urls import include, url
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
url(r'^__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
in settings.py
INSTALLED_APPS += (
'debug_toolbar',
# 'debug_toolbar_line_profiler',
# 'memcache_toolbar',
# 'pympler',
# 'template_profiler_panel',
# 'template_timings_panel',
)
DEBUG_TOOLBAR_PANELS = [
# 'debug_toolbar.panels.versions.VersionsPanel',
# 'debug_toolbar.panels.timer.TimerPanel',
# 'debug_toolbar.panels.settings.SettingsPanel',
# 'debug_toolbar.panels.headers.HeadersPanel',
# 'debug_toolbar.panels.request.RequestPanel',
'debug_toolbar.panels.sql.SQLPanel',
# 'debug_toolbar.panels.staticfiles.StaticFilesPanel',
# 'debug_toolbar.panels.templates.TemplatesPanel',
# 'template_timings_panel.panels.TemplateTimings.TemplateTimings',
# 'template_profiler_panel.panels.template.TemplateProfilerPanel'
# 'debug_toolbar.panels.cache.CachePanel',
# 'memcache_toolbar.panels.memcache.MemcachePanel',
# 'debug_toolbar.panels.profiling.ProfilingPanel',
# 'debug_toolbar_line_profiler.panel.ProfilingPanel',
# 'pympler.panels.MemoryPanel',
# 'debug_toolbar.panels.signals.SignalsPanel',
# 'debug_toolbar.panels.logging.LoggingPanel',
# 'debug_toolbar.panels.redirects.RedirectsPanel',
]
if 'debug_toolbar' in INSTALLED_APPS:
MIDDLEWARE_CLASSES = list(MIDDLEWARE_CLASSES)
MIDDLEWARE_CLASSES += [
'debug_toolbar.middleware.DebugToolbarMiddleware',
]
def show_toolbar(request):
return True
DEBUG_TOOLBAR_CONFIG = {
'SHOW_TOOLBAR_CALLBACK': show_toolbar,
}
INTERNAL_IPS = (
'127.0.0.1',
)
ref:
http://django-debug-toolbar.readthedocs.org/en/latest/configuration.html
http://django-debug-toolbar.readthedocs.org/en/latest/panels.html
要確保沒有在 MIDDLEWARE_CLASSES
裡啟用以下的 middlewares:
'django.middleware.gzip.GZipMiddleware'
'django.middleware.http.ConditionalGetMiddleware'
ref:
http://django-debug-toolbar.readthedocs.io/en/stable/installation.html#automatic-setup