feat: stabilize multi-region runtime sync and worker orchestration
This commit is contained in:
@@ -8,7 +8,7 @@ from datetime import datetime
|
||||
import requests
|
||||
|
||||
|
||||
def _fetch_json(session: requests.Session, url: str, timeout: int = 15) -> tuple[bool, str, dict | None]:
|
||||
def _fetch_json(session: requests.Session, url: str, timeout: int = 25) -> tuple[bool, str, dict | None]:
|
||||
try:
|
||||
response = session.get(url, timeout=timeout)
|
||||
response.raise_for_status()
|
||||
@@ -45,20 +45,22 @@ def main() -> int:
|
||||
checks: list[dict[str, object]] = []
|
||||
|
||||
endpoints = [
|
||||
("health", f"{base_url}/health"),
|
||||
("runtime_status", f"{base_url}/api/v1/runtime/status"),
|
||||
("runtime_preflight", f"{base_url}/api/v1/runtime/preflight"),
|
||||
("dashboard_overview", f"{base_url}/api/v1/dashboard/overview"),
|
||||
("settings_export", f"{base_url}/api/v1/settings/export"),
|
||||
("settings_backups", f"{base_url}/api/v1/settings/backups"),
|
||||
("detect_status", f"{base_url}/api/v1/detect/status"),
|
||||
("imports_summary", f"{base_url}/api/v1/imports/summary"),
|
||||
("exports", f"{base_url}/api/v1/exports"),
|
||||
("logs_latest", f"{base_url}/api/v1/logs/latest"),
|
||||
("health", f"{base_url}/health", 25),
|
||||
("runtime_status", f"{base_url}/api/v1/runtime/status", 25),
|
||||
("runtime_preflight", f"{base_url}/api/v1/runtime/preflight", 25),
|
||||
# overview merges multiple heavy runtime aggregates and can legitimately
|
||||
# take longer than lightweight health/readiness endpoints on live load.
|
||||
("dashboard_overview", f"{base_url}/api/v1/dashboard/overview", 25),
|
||||
("settings_export", f"{base_url}/api/v1/settings/export", 25),
|
||||
("settings_backups", f"{base_url}/api/v1/settings/backups", 25),
|
||||
("detect_status", f"{base_url}/api/v1/detect/status", 25),
|
||||
("imports_summary", f"{base_url}/api/v1/imports/summary", 25),
|
||||
("exports", f"{base_url}/api/v1/exports", 25),
|
||||
("logs_latest", f"{base_url}/api/v1/logs/latest", 25),
|
||||
]
|
||||
|
||||
for name, url in endpoints:
|
||||
ok, message, payload = _fetch_json(session, url)
|
||||
for name, url, timeout in endpoints:
|
||||
ok, message, payload = _fetch_json(session, url, timeout=timeout)
|
||||
checks.append(
|
||||
{
|
||||
"name": name,
|
||||
|
||||
Reference in New Issue
Block a user