From da50e3d943ced6df0621ce9114dac9f31c4bf17b Mon Sep 17 00:00:00 2001 From: fzyzcjy <5236035+fzyzcjy@users.noreply.github.com> Date: Tue, 19 May 2026 09:16:22 +0800 Subject: [PATCH] Log per-request time stats in a dedicated tail step (#25707) --- .../scheduler_components/output_streamer.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/python/sglang/srt/managers/scheduler_components/output_streamer.py b/python/sglang/srt/managers/scheduler_components/output_streamer.py index 0c7f38ec4..8a0a76ec8 100644 --- a/python/sglang/srt/managers/scheduler_components/output_streamer.py +++ b/python/sglang/srt/managers/scheduler_components/output_streamer.py @@ -142,13 +142,7 @@ class SchedulerOutputStreamer: continue acc.accept(req=req) - - if ( - req.finished() - and self.ps.attn_tp_rank == 0 - and self.server_args.enable_request_time_stats_logging - ): - req.log_time_stats() + self._maybe_log_time_stats(req=req) dp_ranks = [self.ps.dp_rank] * len(acc.rids) if acc.rids else None @@ -200,6 +194,14 @@ class SchedulerOutputStreamer: ) ) + def _maybe_log_time_stats(self, *, req: Req) -> None: + if ( + req.finished() + and self.ps.attn_tp_rank == 0 + and self.server_args.enable_request_time_stats_logging + ): + req.log_time_stats() + def _stream_output_embedding(self, reqs: List[Req]): rids = [] http_worker_ipcs = []