一个简单的可重用应用程序,用于检查并列出有关您的项目和其依赖项的各种信息
项目描述
Django-heartbeat是一个简单的可重用应用程序,用于检查并列出有关您的项目和其依赖项的各种信息
需求
- Python >=3.8(已测试Python 3.8,3.10)
- Django >=4 < 5
安装
使用pip安装
pip install django-heartbeat
接下来,将 'heartbeat' 添加到您的settings.py INSTALLED_APPS
INSTALLED_APPS = (
...
'heartbeat',
)
配置urls.py
if 'heartbeat' in settings.INSTALLED_APPS:
from heartbeat.urls import urlpatterns as heartbeat_urls
urlpatterns += [
url(r'^heartbeat/', include(heartbeat_urls))
]
用法
-
/heartbeat/
从这一点开始,您可以访问/heartbeat/端点并收到200 OK。
-
/heartbeat/1337/
如果您想查看一些自定义检查器的更详细视图,您必须在settings.py中为heartbeat配置一个自定义配置文件。配置文件应该是一个包含至少基本认证凭据或键
disable
设置为True
以禁用基本认证的字典。
例如:
HEARTBEAT = {
'package_name': 'foo_project',
'checkers': [
'heartbeat.checkers.build',
'heartbeat.checkers.distribution_list',
'heartbeat.checkers.debug_mode',
],
'auth': {
'username': 'foo',
'password': 'bar',
},
}
如果没有定义检查器,heartbeat将默认使用以下内容
heartbeat.checkers.distribution_list
heartbeat.checkers.debug_mode
heartbeat.checkers.python
可用的检查器
请确保您安装了 django-heartbeat 的最新版本,因为在版本 1.0.8 和 2.0.0 中检查器名称已更改。如果由于某些原因您无法安装最新版本,请阅读您所拥有的版本和上述版本的发行说明。
heartbeat.checkers.build
- 列出已安装包的信息
- 请注意,为了使此检查器正常工作,您必须在 HEARTBEAT 设置中添加 'package_name': 'foo_package' 键值对
heartbeat.checkers.databases
- 显示与您配置的数据库的连接信息
heartbeat.checkers.debug_mode
- 显示 DEBUG 模式是否设置为 True 或 False
heartbeat.checkers.distribution_list
- 列出所有已安装的依赖项
heartbeat.checkers.host
- 显示关于您系统的各种信息(例如:主机名、CPU 数量、运行时间、已用/可用内存等)
heartbeat.checkers.memcached_status
- 显示您的 Memcached 的统计信息。
- 在启用此检查器之前,请确保您已安装适当的 Memcached 绑定(最常见的是 python-memcached 和 pylibmc)
heartbeat.checkers.python
- 列出当前的 Python 版本
heartbeat.checkers.redis_status
- 检查与 Redis 服务器的连接
- 请确保您已正确配置 settings.py 中的 CACHEOPS_REDIS
实现您自己的检查器
- my_checker.py
def check(request): """ :param request: HttpRequest object :return: dict """ # Checker logic goes here return {'ping': 'pong'}
注意:您的检查器函数名必须是 'check' 并必须返回一个可序列化为 JSON 的对象
- 将其添加到 settings.HEARTBEAT 配置中
HEARTBEAT = { 'checkers': [ 'heartbeat.checkers.distribution_list', 'my_project.my_checker' ... ], ... }
很简单,对吧?
如果您想通过添加新的检查器(或任何其他功能)为此库做出贡献,请随时提交一个拉取请求。
贡献者
- Andrei Prădan
- Dan Claudiu Pop
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。