django-postgres-metrics
Project description
=======================
A Django application that exposes a bunch of PostgreSQL database metrics.
Background
----------
At `PyCon Canada 2017 <https://2017.pycon.ca/>`_ `Craig Kerstiens
<http://www.craigkerstiens.com/>`_ gave a talk "`Postgres at any scale
<https://2017.pycon.ca/schedule/56/>`_". In his talk Craig pointed out a bunch
of metrics one should look at to understand why a PostgreSQL database could be
"slow" or not perform as expected.
This project adds a Django Admin view exposing these metrics to Django users
with the ``is_superusers`` flag turned on.
Installation
------------
Start by installing ``django-postgres-metrics`` from PyPI::
$ pip install django-postgres-metrics
Then you need to add ``postgres_metrics`` to your ``INSTALLED_APPS`` list. Due
to the wait postgres_metrics works, you need to include it *before* the
``admin`` app::
INSTALLED_APPS = [
'postgres_metrics.apps.PostgresMetrics',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Lastly, you need to add a URL path to your global ``urls.py`` *before* the
``admin`` URL patterns.
For Django 2.0 and up::
from django.urls import include, path
urlpatterns = [
path('admin/postgres-metrics/', include('postgres_metrics.urls')),
path('admin/', admin.site.urls),
]
For Django 1.11 and before::
from django.conf.urls import include, url
urlpatterns = [
url(r'^admin/postgres-metrics/', include('postgres_metrics.urls')),
url(r'^admin/', admin.site.urls),
]
Security
--------
If you found or if you think you found a security issue please get in touch via
``info+django-postgres-stats *AT* markusholtermann *DOT* eu``.
I'm working about this in my free time. I don't have time to monitor the email
24/7. But you should normally receive a response within a week. If I haven't
got back to you within 2 weeks, please reach out again.
TESTING
-------
To run the unit tests::
$ pip install tox
$ tox
Home-page: https://github.com/django-postgres-metrics/django-postgres-metrics
Author: Markus Holtermann
Author-email: info+django-postgres-stats@markusholtermann.eu
License: BSD
Description-Content-Type: UNKNOWN
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
A Django application that exposes a bunch of PostgreSQL database metrics.
Background
----------
At `PyCon Canada 2017 <https://2017.pycon.ca/>`_ `Craig Kerstiens
<http://www.craigkerstiens.com/>`_ gave a talk "`Postgres at any scale
<https://2017.pycon.ca/schedule/56/>`_". In his talk Craig pointed out a bunch
of metrics one should look at to understand why a PostgreSQL database could be
"slow" or not perform as expected.
This project adds a Django Admin view exposing these metrics to Django users
with the ``is_superusers`` flag turned on.
Installation
------------
Start by installing ``django-postgres-metrics`` from PyPI::
$ pip install django-postgres-metrics
Then you need to add ``postgres_metrics`` to your ``INSTALLED_APPS`` list. Due
to the wait postgres_metrics works, you need to include it *before* the
``admin`` app::
INSTALLED_APPS = [
'postgres_metrics.apps.PostgresMetrics',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Lastly, you need to add a URL path to your global ``urls.py`` *before* the
``admin`` URL patterns.
For Django 2.0 and up::
from django.urls import include, path
urlpatterns = [
path('admin/postgres-metrics/', include('postgres_metrics.urls')),
path('admin/', admin.site.urls),
]
For Django 1.11 and before::
from django.conf.urls import include, url
urlpatterns = [
url(r'^admin/postgres-metrics/', include('postgres_metrics.urls')),
url(r'^admin/', admin.site.urls),
]
Security
--------
If you found or if you think you found a security issue please get in touch via
``info+django-postgres-stats *AT* markusholtermann *DOT* eu``.
I'm working about this in my free time. I don't have time to monitor the email
24/7. But you should normally receive a response within a week. If I haven't
got back to you within 2 weeks, please reach out again.
TESTING
-------
To run the unit tests::
$ pip install tox
$ tox
Home-page: https://github.com/django-postgres-metrics/django-postgres-metrics
Author: Markus Holtermann
Author-email: info+django-postgres-stats@markusholtermann.eu
License: BSD
Description-Content-Type: UNKNOWN
Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
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
Close
Hashes for django-postgres-metrics-0.5.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | f132a93d535b6b6181e76273a12f97cd4acfa44773c97a9cbe342bd0585c25ac |
|
MD5 | c87b5c1f63f3d3f6135f53d86ad86d19 |
|
BLAKE2b-256 | acbd4b305a1e0698a681ca8d7fe50cbcc7c4e1634f84bf8405e84ccc247f26c8 |
Close
Hashes for django_postgres_metrics-0.5.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | be0c37fbb16f446061fb5a726881834afd16ebe0afb9d79a5e84efe19e2b312b |
|
MD5 | 42b082be05fe5111ab012cfb9fa7dce7 |
|
BLAKE2b-256 | bceb692aca99331a7cf647e077599005044fcf8b007b994df505c0f5cc360f97 |