跳转到主要内容

FastAPI应用程序的健康检查。

项目描述

FastAPI Health 🚑️

Latest Commit
Package version

本软件包的目标是帮助您实现健康检查API模式

安装

pip install fastapi-health

快速入门

使用不同条件动态创建健康检查端点。每个条件都是一个可调用对象,您甚至可以在其中包含依赖项

from fastapi import FastAPI, Depends
from fastapi_health import health


def get_session():
    return True


def is_database_online(session: bool = Depends(get_session)):
    return session


app = FastAPI()
app.add_api_route("/health", health([is_database_online]))

高级用法

health()方法接收以下参数

  • conditions:表示您的API条件的可调用对象列表,它可以返回bool或一个dict
  • success_output:一个可选字典,它将是成功健康调用的内容响应。
  • failure_output:与success_output类似的可选字典,用于失败场景。
  • success_status:一个整数,在成功的情况下覆盖默认状态(200)。
  • failure_status:一个整数,在失败的情况下覆盖默认状态(503)。

需要注意的是,在条件上的混合返回语句(booldict)的情况下,可能会出现特殊的行为。例如

from fastapi import FastAPI
from fastapi_health import health


def healthy_condition():
    return {"database": "online"}


def sick_condition():
    return False


app = FastAPI()
app.add_api_route("/health", health([healthy_condition, sick_condition]))

这将生成一个响应,状态为503(默认failure_status),因为sick_condition返回False,JSON体为{"database": "online"}。这不是错误或bug。这就是预期效果。

许可协议

本项目遵循MIT许可协议。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码发行版

fastapi-health-0.4.0.tar.gz (4.0 kB 查看散列)

上传时间 源代码

构建发行版

fastapi_health-0.4.0-py3-none-any.whl (4.0 kB 查看散列)

上传时间 Python 3

由以下支持