两项检查一坏时的状态码

👁️ 1 人浏览 💬 0 人评论 ❤️ 添加收藏

按模型,一项过一项坏时 http_code(checks) 交回几?

贯穿本节的运维模型(判题机纯 Python、无网,这是它的确定模型,见 spine.py):服务上线后靠日志/指标/健康/告警盯住它。

健康检查:一批依赖检查 {"name":..,"ok":bool}all_ok 全过否、status=healthy/unhealthy、http_code=200/503、failed=没过的名字。

def all_ok(checks):
    """所有依赖检查都通过吗(checks 每项 {"name":..,"ok":bool})。"""
    return all(c["ok"] for c in checks)


def status(checks):
    """健康端点该报的状态:全过 healthy,否则 unhealthy。"""
    return "healthy" if all_ok(checks) else "unhealthy"


def http_code(checks):
    """健康端点该回的状态码:全过 200,否则 503。"""
    return 200 if all_ok(checks) else 503


def failed(checks):
    """哪几项检查没过(名字,排序)。"""
    return sorted(c["name"] for c in checks if not c["ok"])

print(http_code([{"name": "db", "ok": True}, {"name": "cache", "ok": False}]))
提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论