Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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/
- Host: GitHub
- URL: https://github.com/Tijani-Dia/dj-tracker
- Owner: Tijani-Dia
- License: bsd-3-clause
- Created: 2022-12-16T23:43:35.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-08T20:53:07.000Z (6 months ago)
- Last Synced: 2024-08-09T15:23:41.737Z (6 months ago)
- Topics: django, orm, performance-monitoring, performance-optimization
- Language: Python
- Homepage: https://tijani-dia.github.io/dj-tracker/
- Size: 6.35 MB
- Stars: 79
- Watchers: 2
- Forks: 2
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-django-performance - dj-tracker - `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/) (Profiling / Tools)
README
`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.