# 健康检查接口 状态:已实现,基础阶段。无需鉴权;默认仅监听 `127.0.0.1:8080`。 ## GET /health/live 返回进程 HTTP 服务是否存活,不访问数据库。 ```sh curl -i http://127.0.0.1:8080/health/live ``` HTTP 200,`Content-Type: application/json`: ```json {"status":"alive"} ``` ## GET /health/ready 检查数据库连接和迁移记录是否与当前二进制的版本、校验和一致且没有 dirty 标记,并检查 Orbit 表的数据库外键为 0。内部检查最多 2 秒。 ```sh curl -i http://127.0.0.1:8080/health/ready ``` 通过时 HTTP 200: ```json {"status":"ready","scope":"database_and_schema"} ``` 数据库不可用、迁移缺失、记录被修改、存在 dirty 标记或 Orbit 表被添加外键时 HTTP 503: ```json {"status":"not_ready"} ``` 响应不包含 DSN、数据库错误文本或凭据。检查迁移记录不能发现所有人工 DDL 漂移,运行账户权限和迁移流程仍需受控。 ## SDK 与运行限制 对应 `Client.Liveness(ctx)` 和 `Client.Readiness(ctx)`,见 [SDK 接入](../sdk/README.md)。HTTP 503 返回 `*orbit.HTTPError`。 ready 只表示数据库与迁移基础可用;不检查 Worker、任务积压、流程执行或业务效果。P1 启动时先校验迁移,缺失或 dirty 会拒绝启动;运行后数据库不可用时 ready 返回 503。SDK 默认请求超时为 10 秒,调用方可通过 context 设置更短期限。运行指标见[观测接口](observability.md),指标端点是否启用由 `ORBIT_METRICS_ADDR` 控制。