From e3bed74afb1ffbc753c3e53d272ed5b347366a73 Mon Sep 17 00:00:00 2001 From: Zilin Zhu Date: Sun, 18 May 2025 00:49:02 +0800 Subject: [PATCH] [router] Add /list_workers endpoint to router (#6366) --- sgl-router/src/server.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sgl-router/src/server.rs b/sgl-router/src/server.rs index 5993e2f48..890af00b9 100644 --- a/sgl-router/src/server.rs +++ b/sgl-router/src/server.rs @@ -132,6 +132,13 @@ async fn add_worker( } } +#[get("/list_workers")] +async fn list_workers(data: web::Data) -> impl Responder { + let workers = data.router.get_worker_urls(); + let worker_list = workers.read().unwrap().clone(); + HttpResponse::Ok().json(serde_json::json!({ "urls": worker_list })) +} + #[post("/remove_worker")] async fn remove_worker( query: web::Query>, @@ -253,6 +260,7 @@ pub async fn startup(config: ServerConfig) -> std::io::Result<()> { .service(get_server_info) .service(add_worker) .service(remove_worker) + .service(list_workers) // Default handler for unmatched routes. .default_service(web::route().to(sink_handler)) })