diff --git a/python/sglang/multimodal_gen/runtime/entrypoints/diffusion_generator.py b/python/sglang/multimodal_gen/runtime/entrypoints/diffusion_generator.py index 0d47d08398b8..005bf2e16e79 100644 --- a/python/sglang/multimodal_gen/runtime/entrypoints/diffusion_generator.py +++ b/python/sglang/multimodal_gen/runtime/entrypoints/diffusion_generator.py @@ -347,7 +347,10 @@ def generate( results.append(result_item) except Exception as e: logger.error( - "Failed to generate output for prompt %d: %s", request_idx + 1, e + "Failed to generate output for prompt %d: %s", + request_idx + 1, + e, + exc_info=True, ) continue diff --git a/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising.py b/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising.py index 4c5f325406fa..ea315ed14206 100644 --- a/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising.py +++ b/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising.py @@ -900,7 +900,7 @@ def forward( if num_timesteps > 0: self.log_info( - "Average time per step: %.4f seconds", + "average time per step: %.4f seconds", (denoising_end_time - denoising_start_time) / len(timesteps), ) diff --git a/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising_dmd.py b/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising_dmd.py index 1dd64a67cc61..250af0135796 100644 --- a/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising_dmd.py +++ b/python/sglang/multimodal_gen/runtime/pipelines_core/stages/denoising_dmd.py @@ -268,7 +268,7 @@ def forward( denoising_loop_end_time = time.time() if len(timesteps) > 0: self.log_info( - "Average time per step: %.4f seconds", + "average time per step: %.4f seconds", (denoising_loop_end_time - denoising_loop_start_time) / len(timesteps), ) diff --git a/python/sglang/multimodal_gen/runtime/utils/perf_logger.py b/python/sglang/multimodal_gen/runtime/utils/perf_logger.py index f840bdf21de5..ae126c40790a 100644 --- a/python/sglang/multimodal_gen/runtime/utils/perf_logger.py +++ b/python/sglang/multimodal_gen/runtime/utils/perf_logger.py @@ -6,7 +6,6 @@ import subprocess import sys import time -import traceback from datetime import datetime from functools import lru_cache from pathlib import Path @@ -16,6 +15,7 @@ import sglang import sglang.multimodal_gen.envs as envs +from sglang.multimodal_gen.runtime.utils.logging_utils import _SGLDiffusionLogger @dataclasses.dataclass @@ -123,7 +123,7 @@ class StageProfiler: def __init__( self, stage_name: str, - logger: logging.Logger, + logger: _SGLDiffusionLogger, timings: Optional["RequestTimings"], simple_log: bool = False, ): @@ -131,7 +131,6 @@ def __init__( self.timings = timings self.logger = logger self.simple_log = simple_log - self.logger = logging.getLogger(__name__) self.start_time = 0.0 # Check env var at runtime to ensure we pick up changes (e.g. from CLI args) @@ -158,13 +157,8 @@ def __exit__(self, exc_type, exc_val, exc_tb): self.stage_name, execution_time_s * 1000, exc_val, + exc_info=True, ) - if self.metrics_enabled: - self.logger.error( - "[%s] Traceback: %s", - self.stage_name, - "".join(traceback.format_tb(exc_tb)), - ) return False if self.simple_log: