Gateway & Health Check
Health Check là gì?
Health Check cho phép WinWraper tự động kiểm tra xem service của bạn có thực sự hoạt động đúng không, không chỉ là "process đang chạy" mà còn đang phản hồi bình thường.
WinWraper gọi một HTTP endpoint của service mỗi 10 giây để xác nhận liveness.
Cột Health trong Service List
| Trạng thái | Màu | Ý nghĩa |
|---|---|---|
| Healthy | Xanh lá ✓ | Service trả về HTTP 200 |
| Unhealthy | Đỏ ✗ | Endpoint không phản hồi hoặc trả lỗi |
| Unknown | Xám, | Chưa cấu hình URL hoặc chưa đủ dữ liệu |
Health Check URL được cấu hình như thế nào?
Hiện phiên bản WinWraper không có UI để người dùng tự nhập Health Check URL. URL chỉ được gán tự động cho các service do WinWraper cài qua Cài đặt nhanh, hiện nay là OpenClaw Gateway, được trỏ đến http://127.0.0.1:<port>/healthz.
Các service bạn thêm thủ công bằng Thêm service sẽ hiển thị trạng thái Health là Unknown và WinWraper sẽ không gọi HTTP poll cho chúng. UI cho phép người dùng nhập URL sẽ được bổ sung trong bản cập nhật sau.
💡Mẹo
Nhiều framework web có sẵn endpoint /healthz hoặc /health. Nếu không, thêm một route đơn giản trả về {"status":"ok"} với HTTP 200, để sẵn sàng khi WinWraper bổ sung UI Health Check.
Health Check với OpenClaw (WSL2 Gateway)
Service OpenClaw (AI gateway chạy trong WSL2) có hành vi đặc biệt: thay vì dùng HTTP poll, WinWraper kiểm tra health dựa trên trạng thái Windows process của gateway.
Lý do: OpenClaw đôi khi bận xử lý request AI và không thể trả lời HTTP kịp thời, dùng HTTP poll sẽ gây false-positive "Unhealthy" không đáng có.
Xem thêm: WSL2 & OpenClaw
Sử dụng Health Check hiệu quả
| Tình huống | Gợi ý |
|---|---|
| Service web (Node.js, Python Flask, ...) | Thêm route /healthz trả về 200 |
| Service background worker không có HTTP | Không cần Health Check, dùng Watcher để giám sát |
| Service phụ thuộc database | Endpoint /healthz nên kiểm tra kết nối DB và trả về 503 nếu DB offline |
Tiếp theo: WSL2 & OpenClaw →