Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Tijani-Dia/dj-tracker

A Django app that tracks your queries to help optimize them. Demo: https://dj-tracker-bakerydemo.fly.dev/dj-tracker/
https://github.com/Tijani-Dia/dj-tracker

django orm performance-monitoring performance-optimization

Last synced: 2 months ago
JSON representation

A Django app that tracks your queries to help optimize them. Demo: https://dj-tracker-bakerydemo.fly.dev/dj-tracker/

Awesome Lists containing this project

README

        









Package version


Downloads




`dj-tracker` is an app that tracks your queries to help detecting some possible performance optimisations listed in [Database access optimization](https://docs.djangoproject.com/en/dev/topics/db/optimization/).

## Features

- Detailed field usage of model instances
- Report unused fields in a model instance and provides hints on when to use `.defer` and `.only`
- Report model instance attributes access and provides hints on when to use `.values` or `.values_list`
- Report cache hits and provides hints on when to use `iterator`
- Provides hints on when to use `.count`, `.contains`, `.exists`
- Detect N+1 queries
- Detect when a deferred field is loaded
- and many more insights into your queries with minimized overhead....

## Demo

You can try `dj-tracker` with the [bakerydemo](https://github.com/wagtail/bakerydemo) on the [demo app](https://dj-tracker-bakerydemo.herokuapp.com/dj-tracker/).

## Requirements

- Python: `>=3.8`
- Django: `>=3.2`
- [django-filter](https://github.com/carltongibson/django-filter)

## Getting started

Check out the [installation steps](https://tijani-dia.github.io/dj-tracker/installation/) if you want to get started quickly or the [tutorial](https://tijani-dia.github.io/dj-tracker/tutorial/setup/) to see a concrete example of `dj-tracker` usage.

## Documentation

All documentation is in the "docs" directory and online at https://tijani-dia.github.io/dj-tracker/

## Development phase - Contributing

`dj-tracker` is in [alpha phase](https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha).

You can help a lot by [reporting bugs](https://github.com/Tijani-Dia/dj-tracker/issues/new) you'll encounter. Feature requests, PRs or/and any feedback are also welcome.