# django-tracepanel: debug and tracing panel for Django apps

**URL:** <https://forum.djangoproject.com/t/django-tracepanel-debug-and-tracing-panel-for-django-apps/46274>\
**Category:** Show & Tell\
**Created:** [October 26, 2026, 8:17pm UTC](https://forum.djangoproject.com/t/django-tracepanel-debug-and-tracing-panel-for-django-apps/46274 "2026-10-26T20:17:25Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![antonrh](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.djangoproject.com/antonrh/32/33596_2.png) [@antonrh](https://forum.djangoproject.com/u/antonrh)\
**Post date:** [October 26, 2026, 8:17pm UTC](https://forum.djangoproject.com/t/django-tracepanel-debug-and-tracing-panel-for-django-apps/46274/1 "2026-10-26T20:17:25Z")

</div>

Hi everyone,

I’ve been working with Django for about 15 years. For debugging, I’ve always  
used django-debug-toolbar and Celery Flower. They are good tools, but now  
most of my work involves APIs (DRF, Ninja) and Celery tasks. Toolbar works  
best with HTML pages, and tasks are out of its scope. Flower shows task  
status, but not what happens inside: SQL queries, HTTP calls, etc.

So I made **django-tracepanel**.

![demo](https://us1.discourse-cdn.com/flex026/uploads/djangoproject/original/3X/a/3/a3cb9567439b53e4e3169323e29550870185d6cd.gif)

What it does:

- shows every request, task and management command: SQL, cache, Redis,  
HTTP calls, templates, logs
- works with API calls from Swagger UI or frontend, not only HTML pages
- task is linked to the request which started it
- finds N+1, duplicate and slow queries, shows EXPLAIN and the line in  
your code
- profiler (time and memory)
- `pytest --tracepanel` fails tests with N+1 queries

Supports:

- Django 5.2, 6.0, 6.1, sync and async views
- PostgreSQL, MySQL, SQLite, SQL Server, Oracle
- DRF, Django Ninja, Graphene, Strawberry, htmx
- Celery, Dramatiq, RQ, Huey, django-q2, Taskiq, Django Tasks, Channels

Full list (MongoDB, SQLAlchemy, Redis, HTTP clients, OpenAI and more) is in  
the README.

Install:

```auto
pip install django-tracepanel

```

```python
INSTALLED_APPS += ["tracepanel.django"]

```

It is on when `DEBUG = True`. Everything is stored locally, in a SQLite  
file in `.tracepanel/` in your project.

[GitHub](https://github.com/tracepanel/django-tracepanel), docs are linked from the README.

It’s still an early version, so any feedback is welcome.

Thanks!
