add status API

This commit is contained in:
Helix K
2026-05-06 13:32:22 -05:00
parent eaf8e0c0b4
commit 9c9d906319
+13
View File
@@ -98,6 +98,19 @@ def http_ping(service: HTTPServiceConfig) -> None:
time.sleep(cfg.pinging.rate) time.sleep(cfg.pinging.rate)
@app.get("/api/v1/status")
async def api_v1_up() -> dict:
rsp = {"healthy": True, "services": {}}
for name, record in uptime.items():
if record[-1] == "I":
rsp["services"][name] = {"healthy": True}
else:
rsp["services"][name] = {"healthy": False}
rsp["healthy"] = False
return rsp
@app.get("/", response_class=HTMLResponse) @app.get("/", response_class=HTMLResponse)
async def root() -> str: async def root() -> str:
template = templates.get_template("index.xht") template = templates.get_template("index.xht")