一个暴露大量PostgreSQL数据库指标的Django应用。
项目描述
django-postgres-metrics
一个暴露大量PostgreSQL数据库指标的Django应用。
背景
在2017年PyCon加拿大会议上,Craig Kerstiens发表了题为"Postgres at any scale"的演讲。在他的演讲中,Craig指出了一些应该关注的指标,以了解为什么PostgreSQL数据库可能会“慢”或未按预期表现。
此项目通过开启is_superusers
标志,向Django用户添加了一个Django Admin视图,以公开这些指标。
安装
首先从PyPI安装django-postgres-metrics
(env)$ python -m pip install django-postgres-metrics
您还需要确保安装了psycopg2
或psycopg
,因为Django已经将其作为对PostgreSQL支持的必需要求。
然后,您需要将postgres_metrics
添加到您的INSTALLED_APPS
列表中。由于django-postgres-metrics
的工作方式,您需要在admin
应用之前包含它。
INSTALLED_APPS = [
'postgres_metrics.apps.PostgresMetrics',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
您还需要确保在 TEMPLATES
设置中包含 request
上下文处理器。对于在 Django 1.8 或更高版本中开始的项目,它默认已包含。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'OPTIONS': {
'context_processors': [
...,
'django.template.context_processors.request',
...,
],
},
},
]
最后,您需要在全局 urls.py
中添加一个 URL 路径,在 admin
URL 模式之前。
from django.urls import include, path
urlpatterns = [
path('admin/postgres-metrics/', include('postgres_metrics.urls')),
path('admin/', admin.site.urls),
]
这是一个度量指标可能的样子:
安全性
如果您发现或认为发现了安全漏洞,请通过 info+django-postgres-metrics *at* markusholtermann *dot* eu
联系我们。
我在业余时间处理这个问题。我没有时间24小时监控电子邮件。但您通常应该在一周内收到回复。如果两周内我没有回复您,请再次联系。
贡献
该项目使用 black 和 isort 对其代码进行格式化。使用 flake8 进行代码审查。所有这些都被整合到 pre-commit 中,在每次提交和推送之前运行。要设置它
(env)$ python -m pip install '.[dev,test]'
(env)$ pre-commit install -t pre-commit -t pre-push --install-hooks
运行单元测试
(env)$ django-admin test -v 2 --settings=tests.settings
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分布
django-postgres-metrics-0.15.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 98127ef55cf9d435b4dd0fdf1d160ea5b97690197d4d8e6148fc2cc2bb57ae12 |
|
MD5 | c33e9238e15cf230e744ad3677c68a67 |
|
BLAKE2b-256 | 3ef6045c7c38069683cdaeb2358b931e6442300dd623f1edb6bb7e2003947d02 |
django_postgres_metrics-0.15.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1710d44e910b230e3b7c7ce77304d68a40b1fa3711b18418387455b8e114d97a |
|
MD5 | 6f5ce3e61c41c77edc1dbbab2c8cc4d5 |
|
BLAKE2b-256 | 858b74a6185646f6982448433188f29b9c07e037128fe4882296e4a762f2c21d |