A PostgreSQL profiler for Django that uses pg_stat_statements extension
Project description
django_pg_stat_statements
A PostgreSQL query profiler for Django that uses pg_stat_statements
extension.
Changelog
v0.1.0
- Forked from django-pg-trunk
Requirements
- Python >= 3.7
- PostgreSQL >= 9.2
- Django >= 2.2
Installation
Install using pip:
pip install django-pg-stat-statements
Then add django_pg_stat_statements
to your INSTALLED_APPS
.
INSTALLED_APPS = [
...
'django_pg_stat_statements',
]
django-pg-stat-statements
will automatically install pg_stat_statements
extension for PostgreSQL if it doesn't exist, however pg_stat_statements
should be added to shared_preload_libraries
in the PostgreSQL config.
Usage
After installing the package, database queries can be examined under PostgreSQL Stat Statements > Query Statistics
in Django admin.
Change view have more detailed statistics. All of the columns of pg_stat_statements
can be found here.
A possible usecase of QueryStatistic
model can be running a cron job that checks if there is a query that takes more time than a specific thershold, and send related alerts (emails, Slack notifications, etc.).
Contribution
As a first step, please open an issue about the feature/bug.
-
Build and run tests with docker-compose:
docker-compose build test_app && docker-compose run --rm test_app
-
Tests can be run using
pytest
command. Tests for different environments will be run on CircleCI. -
Changes on Django Admin can be tested using
python manage.py runserver 0:8000
in development Docker container and navigating to http://127.0.0.1/admin.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django_pg_stat_statements-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab6c3123b21d4b07548c80ab12f6b7c103b24db0f5e07b1cf6a60713d7482f99 |
|
MD5 | d4f813c8ef71c2569e05c28f1eb69993 |
|
BLAKE2b-256 | a00e0c8003bb4feb5dcb2e8a4a21215fe3e816d0548be00a4ef27563170ba4d6 |
Hashes for django_pg_stat_statements-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 723015da8433faa524478330922bc831dc4abcb5d1878c6dbed8f8405b5dec27 |
|
MD5 | 98490d5224b58ef75824a9d399f3267a |
|
BLAKE2b-256 | 33ce8c43f98fcf44550deb9178ae03bf877c174ac5298512ffe1616105f487f0 |