用于调试和集成测试的模拟Sentry服务
项目描述
肯特是一个用于调试和集成测试Sentry的服务。
- 代码::
- 问题::
- 许可协议::
MPL v2
目标
肯特的目标
在使用sentry-sdk时,使调试before_send和before_breadcrumb净化代码成为可能
使调试其他sentry事件提交有效负载问题成为可能
使编写针对模拟Sentry实例的集成测试成为可能
快速入门
在本地机器上安装和运行
安装肯特。
您可以使用pipx或pip或其他方式从PyPI安装肯特
pipx install kent
您可以从GitHub安装REVISH(“main”,分支名称,提交等)
pipx install https://github.com/willkg/kent/archive/refs/heads/<REVISH>.zip
您可以从此存储库的检出版本安装
pipx install .
运行肯特
kent-server run [-h HOST] [-p PORT]
在Docker容器中运行
我使用的是类似这样的东西
FROM python:3.11.5-slim-bookworm WORKDIR /app/ ENV PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 RUN groupadd -r kent && useradd --no-log-init -r -g kent kent # NOTE(willkg): This installs Kent from main tip. If you're using Kent for # realzies, you probably don't want to do this because Kent could change and # break all your stuff. Pick a specific commit or tag. RUN pip install -U 'pip>=8' && \ pip install --no-cache-dir 'kent==<VERSION>' USER kent ENTRYPOINT ["/usr/local/bin/kent-server"] CMD ["run"]
确保将<VERSION>替换为您要使用的肯特版本。有关发布信息,请参阅https://pypi.ac.cn/project/kent。
然后
$ docker build -t kent:latest . $ docker run --init --rm --publish 8000:8000 kent:latest run --host 0.0.0.0 --port 8000
关于肯特须知的事项
肯特是最假的Sentry服务器。您可以设置Sentry DSN以指向肯特,并让您的应用程序将事件发送到它。
Kent用于测试sentry-sdk功能。Kent不用于测试Relay。
Kent是一个精炼的假Sentry服务,不喜欢快餐。
Kent将在内存中跟踪最后100个接收到的有效载荷。不会将任何内容持久化到磁盘。
您可以通过访问Kent的首页,使用网络浏览器访问事件列表和事件数据。
您也可以通过API访问。这对于想要断言关于事件的集成测试最有用。
- GET /api/eventlist/
内存中所有事件的列表,每个事件都有一个唯一的ID。
- GET /api/event/EVENT_ID
通过ID检索特定事件的负载。
- POST /api/flush/
清除事件管理器中的所有事件。
您可以使用多个项目ID。Kent将保持事件分离。
如果您使用默认设置运行 kent-server run,则您的DSN是
http://public@localhost:5000/1 for project id 1 http://public@localhost:5000/2 for project id 2 etc.
Kent肯定与
Python sentry-sdk客户端
Python raven客户端(已弃用)
我对其他任何东西都不了解。如果您使用Kent与另一个Sentry客户端,请在README中添加一个带有详细信息的issue或pull request。
开发
安装
mkvirtualenv kent
pip install -e '.[dev]'
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
构建分布
kent-2.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b93bf0431ccd9f8de1b1c16ceac8ad158da0f561a2bf1132e9e9f5a557389889 |
|
MD5 | 16441c0a52a20f0c6b907cece9072959 |
|
BLAKE2b-256 | 350ced2e6a33dc0f6d89eb6b01a05d42ea7a1be83bd0136fff68698fac31cec0 |
kent-2.0.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7c7d819c3ac9e932b8e4b04f419c15233d1d230906669d101c6cbaadc3d1f40e |
|
MD5 | aa5186d3e9387865ebb870b7600788ab |
|
BLAKE2b-256 | b301f483ac34ce8a915a2579018e72df8db807a7d73cae83dc9626e47b9f57ea |