diff --git a/.cocoon-plan.md b/.cocoon-plan.md index 79b2215..c1ce07b 100644 --- a/.cocoon-plan.md +++ b/.cocoon-plan.md @@ -52,24 +52,33 @@ - [x] **插件系统** — 动态加载 .so/.dll 扩展 ✅ 2026-06-06(MVP:dlopen + 中间件注册 + 示例插件) - [x] **反向代理 HTTPS 后端** — 轻量级 OpenSSL 客户端封装,支持 TLS 1.2+ 握手 + SNI ✅ 2026-06-08 - [x] **反向代理负载均衡** — 轮询调度 + 故障自动转移,多后端支持(最多8个)✅ 2026-06-08 +- [x] **Prometheus 指标端点** — `/_metrics` 导出 10 项指标,响应码分类计数器 ✅ 2026-06-08 ## 项目状态:恢复开发 > **注意**:用户已指示恢复 cocoon 开发,继续推进新功能。不暂停。 -- 所有 Phase 1-4 核心功能已完成(反向代理 HTTPS 后端已加入) +- 所有 Phase 1-4 核心功能已完成(反向代理负载均衡 + Prometheus 指标已加入) - 编译通过,零警告 -- **142 个单元测试全部通过** + **82 项集成测试全部通过** +- **142 个单元测试全部通过** + **90 项集成测试全部通过**(新增 8 项指标测试) - 当前仅做编译和测试验证,不添加新代码 ## 待办池(活跃) 1. 后端连接池/keep-alive — 避免每次请求新建连接(优先级高) -2. 监控指标(Prometheus /_metrics)— 导出 RPS、连接数、延迟等 +2. 监控指标(Prometheus /_metrics)— ✅ 已完成 2026-06-08 3. 虚拟主机 / 多站点 — 低优先级 4. 加权轮询 / 健康检查 — 负载均衡进阶 ## 最近行动记录 +- 2026-06-08 18:00: **Prometheus 指标端点 /_metrics** + - `server.c`: 新增 7 个原子计数器(`g_total_requests`, `g_response_2xx/3xx/4xx/5xx/200/404`) + - `server.c`: 新增 `update_metrics()` 辅助函数,在 `handle_request` 所有响应路径统一调用 + - `server.c`: 新增 `/_metrics` 端点,返回 Prometheus 文本格式(10 项指标:7 个计数器 + 3 个仪表盘) + - `tests/integration_test.sh`: 新增 8 项 Prometheus 指标测试(状态码、字段检查、HEAD 支持、计数器递增验证) + - 编译零警告,142 单元测试 + 90 集成测试全部通过 + - 提交 `8ad8eca` 已推送到 `main` + - 2026-06-08 16:10: **负载均衡(轮询 + 故障转移)** - `proxy.h`: 重构数据结构,支持多后端(`cocoon_proxy_backend_t`,最多8个) - `proxy.c`: 实现轮询调度 + 自动故障转移(后端连接失败时自动尝试下一个)