一个简单的模块,允许您轻松地向Flask应用程序添加运行状况端点

flask-healthz的Python项目详细描述


烧瓶健康Z

在烧瓶应用程序中定义Kubernetes可以用作的端点 liveness and readiness probes。在

设置它

在烧瓶应用程序上注册蓝图:

fromflaskimportFlaskfromflask_healthzimporthealthzapp=Flask(__name__)app.register_blueprint(healthz,url_prefix="/healthz")

定义要用于检查运行状况的函数。若要发出错误信号,请引发flask_healthz.HealthError。在

^{pr2}$

现在指出烧瓶配置中的这些功能:

HEALTHZ={"live":"yourapp.checks.liveness","ready":"yourapp.checks.readiness",}

可以在配置中直接设置可调用项,因此可以编写如下内容:

HEALTHZ={"live":lambda:None,}

检查端点是否实际工作:

$ curl http://localhost/yourapp/healthz/live
OK
$ curl http://localhost/yourapp/healthz/ready
OK

现在可以配置Kubernetes或OpenShift来检查这些端点。 下面是一个如何在OpenShift的deploymentconfig中实现这一点的示例:

kind:DeploymentConfigspec:[...]template:[...]spec:containers:-name:yourapp[...]livenessProbe:httpGet:path:/healthz/liveport:8080initialDelaySeconds:5timeoutSeconds:1readinessProbe:httpGet:path:/healthz/readyport:8080initialDelaySeconds:5timeoutSeconds:1

示例

以下是一些安装了flask healthz的项目:

许可证

版权所有2020 Red Hat

Flask Healthz的许可证与Flask本身的许可证相同:BSD 3-clause。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是从此类字符串中提取数据的最佳方法   filenotfoundexception Java FileOutputStream Windows/Linux   java在SQLite数据库Android SDK中搜索特定字符串   java使用键值访问jsp中Map<Long,Map<String,Object>>的内容   java奇怪的HTMLeditor工具包问题   在java中使用数组只计算字母   每个应用程序都可以有自己独立的Java SDK吗   java如何将jasper报告生成的PDF文件保存在一个项目文件夹中   java BigDecimal包装器:静态字段为零   解码Base64图像时出现java IllegalArgumentException(非法的Base64字符)   将int转换为字节在Java和Actionscript中产生不同的结果   java什么使不可变对象在没有安全发布技术的情况下发布?   java将字节数据写入目录   一个计算器中有多个操作的java问题   面向对象Java重写是如何工作的   带hibernate的java ClassCastException   指向最后一个对象的java对象列表   java单元测试spring项目中的Get请求