aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/panels.rst19
-rw-r--r--docs/tips.rst11
2 files changed, 28 insertions, 2 deletions
diff --git a/docs/panels.rst b/docs/panels.rst
index f130552..4905385 100644
--- a/docs/panels.rst
+++ b/docs/panels.rst
@@ -105,19 +105,34 @@ Since this behavior is annoying when you aren't debugging a redirect, this
panel is included but inactive by default. You can activate it by default with
the ``DISABLE_PANELS`` configuration option.
-
Non-default built-in panels
---------------------------
The following panels are disabled by default. You must add them to the
``DEBUG_TOOLBAR_PANELS`` setting to enable them.
+.. _profiling-panel:
+
Profiling
~~~~~~~~~
Path: ``debug_toolbar.panels.profiling.ProfilingPanel``
-Profiling information for the view function.
+Profiling information for the processing of the request.
+
+If the ``debug_toolbar.middleware.DebugToolbarMiddleware`` is first in
+``MIDDLEWARE_CLASSES`` then the other middlewares' ``process_view`` methods
+will not be executed. This is because ``ProfilingPanel.process_view`` will
+return a ``HttpResponse`` which causes the other middlewares'
+``process_view`` methods to be skipped.
+
+Note that the quick setup creates this situation, as it inserts
+``DebugToolbarMiddleware`` first in ``MIDDLEWARE_CLASSES``.
+
+If you run into this issues, then you should either disable the
+``ProfilingPanel`` or move ``DebugToolbarMiddleware`` to the end of
+``MIDDLEWARE_CLASSES``. If you do the latter, then the debug toolbar won't
+track the execution of other middleware.
Third-party panels
------------------
diff --git a/docs/tips.rst b/docs/tips.rst
index b65c3d6..d2d88dd 100644
--- a/docs/tips.rst
+++ b/docs/tips.rst
@@ -13,6 +13,17 @@ requests and return responses. Putting the debug toolbar middleware *after*
the Flatpage middleware, for example, means the toolbar will not show up on
flatpages.
+Middleware isn't working correctly
+----------------------------------
+
+Using the Debug Toolbar in its default configuration and with the profiling
+panel will cause middlewares after
+``debug_toolbar.middleware.DebugToolbarMiddleware`` to not execute their
+``process_view`` functions. This can be resolved by disabling the profiling
+panel or moving the ``DebugToolbarMiddleware`` to the end of
+``MIDDLEWARE_CLASSES``. Read more about it at
+:ref:`ProfilingPanel <profiling-panel>`
+
Using the toolbar offline
-------------------------