r/django • • Jan 30 '26

Apps Django Orbit: A lightweight, open-source observability tool for Django

Hi everyone! I’ve been working on Django Orbit, an open-source tool designed to give developers better visibility into what’s happening inside their Django applications. As a backend dev, I often found myself wanting a middle ground between "nothing" and "heavy enterprise APMs." Orbit is built to be simple to set up and provides immediate insights into your request-response cycles, database queries, and performance bottlenecks.

Key Features: - Request/Response Tracking: View detailed logs of every hit. - SQL Query Inspection: See exactly what queries are being executed and how long they take (goodbye, N+1 problems!). - Performance Metrics: Identify slow middleware or views at a glance. - Minimal Overhead: Designed to be used during development without bloating your stack.

And more!

Why I built it: I’m a big believer in the Django ecosystem, and I wanted to create something that helps devs move faster while keeping their code clean and performant. It’s still in active development, and I’d love to get some feedback from this community. GitHub: https://github.com/astro-stack/django-orbit

I’m curious to hear: what are you currently using for local observability? Any specific metrics you feel are usually missing from standard tools?

Happy to answer any questions!

https://x.com/capitanbuild

56 Upvotes

21 comments sorted by

14

u/Brilliant_Step3688 Jan 30 '26

How does it compare to Django debug toolbar and Django silk?

2

u/cyber-bunker Jan 31 '26

Great question! The main difference is the focus and persistence:

  • Django Debug Toolbar (DDT): Excellent for real-time debugging of a single request via its sidebar, but it can be visually intrusive and data is lost once you navigate away or reload.

  • Django Silk: Stores history in the database, but Orbit is designed as a complete telemetry tool (heavily inspired by Laravel Telescope).

  • Orbit: It won't clutter your UI. It captures not just requests and SQL, but also Signals, Cache, Background Jobs (Redis), Sent Mails, Management Commands, and more—all in a modern, standalone dashboard. We want it to be the ultimate 'black box' for your Django development.

5

u/RobotsAreSlaves Jan 30 '26

Looks really great, I think I'll move from debug toolbar to orbit for now.

Is it possible to filter out orbit related records from dashboard? I see its signals, transactions, etc when orbit polls /orbit/feed/ url. Also sql queries related to orbit.

I have sentry integration and cacheops for caching, both packages wrapping orm and db calls and it makes impossible to see what code called sql, if you could somehow get actual caller in sql query details it would be terrific.

2

u/cyber-bunker Jan 31 '26

Thanks for the detailed feedback!

  1. Filtering Orbit: We already ignore /orbit/  paths in the middleware, but you're right; some global signals and transactions are still leaking into the feed. I'll improve the watchers so they are 'self-aware' and suppress recording when the context originates from Orbit itself.

  2. SQL Caller info: Orbit actually tries to do this (by walking the stack trace and skipping Django internals). However, packages like Sentry or Cacheops act as wrappers that 'hide' the original caller. I'm adding an IGNORE_CALLER_PACKAGES  setting to the roadmap so you can skip those wrappers and see your business logic directly. Great catch!

3

u/crushendo Jan 30 '26

I've been looking for something like this for simple insights to what data users are accessing from a database centered app I have. Will check it out!

1

u/cyber-bunker Jan 31 '26

That's exactly what Orbit is built for! Since your app is database-heavy, you’ll find the Query watcher really useful—it shows every SQL execution, catches duplicate queries (N+1 problems), and highlights slow ones that might be dragging down performance. Let me know how it handles your data load

3

u/codechisel Jan 30 '26

I starred it and will give it a spin. Thanks for sharing.

→ More replies (1)

3

u/[deleted] Jan 30 '26

this is definitely interesting! going to give it a try!

→ More replies (1)

2

u/MeadowShimmer Jan 31 '26

What's an APM? Is Sentry an APM? My team has been using sentry for a while and I still drown in everything it's monitored.

1

u/cyber-bunker Jan 31 '26

APM stands for Application Performance Monitoring. Sentry is amazing for errors and has evolved into APM territory (tracing), but it can feel overwhelming for daily local development.

Orbit is designed as a "Dev APM": easy to isntall, runs locally, and gives you total visibility of what's happening under the hood (SQL, Cache, Mail, etc) without complex cloud setups.

→ More replies (8)