From 9d353fa4702bebbf3e730519dee0c326555bf979 Mon Sep 17 00:00:00 2001 From: chaunceyjiang Date: Tue, 5 Aug 2025 03:05:48 +0000 Subject: [PATCH 1/4] [Bugfix] Disable the statslogger if the api_server_count is greater than 1 Signed-off-by: chaunceyjiang --- vllm/v1/engine/async_llm.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/vllm/v1/engine/async_llm.py b/vllm/v1/engine/async_llm.py index d23602eaaffa..5eb435d95e9e 100644 --- a/vllm/v1/engine/async_llm.py +++ b/vllm/v1/engine/async_llm.py @@ -104,7 +104,11 @@ def __init__( logger.info( "AsyncLLM created with log_stats=False and non-empty custom " "logger list; enabling logging without default stat loggers") - + if client_count > 1: + logger.warning( + "AsyncLLM created with api_server_count more than 1; " + "disabling stats logging to avoid incomplete stats.") + log_stats = False if self.model_config.skip_tokenizer_init: self.tokenizer = None else: From c25b06445733e660dd390eb8e2113167f6f2e017 Mon Sep 17 00:00:00 2001 From: chaunceyjiang Date: Sat, 6 Sep 2025 00:29:54 +0000 Subject: [PATCH 2/4] [Bugfix] Disable the statslogger if the api_server_count is greater than 1 Signed-off-by: chaunceyjiang --- vllm/v1/engine/async_llm.py | 7 ++----- vllm/v1/metrics/loggers.py | 8 +++++++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/vllm/v1/engine/async_llm.py b/vllm/v1/engine/async_llm.py index 5eb435d95e9e..f57075c6fa82 100644 --- a/vllm/v1/engine/async_llm.py +++ b/vllm/v1/engine/async_llm.py @@ -104,11 +104,7 @@ def __init__( logger.info( "AsyncLLM created with log_stats=False and non-empty custom " "logger list; enabling logging without default stat loggers") - if client_count > 1: - logger.warning( - "AsyncLLM created with api_server_count more than 1; " - "disabling stats logging to avoid incomplete stats.") - log_stats = False + if self.model_config.skip_tokenizer_init: self.tokenizer = None else: @@ -147,6 +143,7 @@ def __init__( engine_idxs=self.engine_core.engine_ranks_managed, custom_stat_loggers=stat_loggers, enable_default_loggers=log_stats, + client_count=client_count, ) self.logger_manager.log_engine_initialized() diff --git a/vllm/v1/metrics/loggers.py b/vllm/v1/metrics/loggers.py index f480344c854f..7c86a2f14a11 100644 --- a/vllm/v1/metrics/loggers.py +++ b/vllm/v1/metrics/loggers.py @@ -652,13 +652,18 @@ def __init__( engine_idxs: Optional[list[int]] = None, custom_stat_loggers: Optional[list[StatLoggerFactory]] = None, enable_default_loggers: bool = True, + client_count: int = 1, ): self.engine_idxs = engine_idxs if engine_idxs else [0] factories: list[StatLoggerFactory] = [] if custom_stat_loggers is not None: factories.extend(custom_stat_loggers) - + if client_count > 1: + logger.warning( + "AsyncLLM created with api_server_count more than 1; " + "disabling stats logging to avoid incomplete stats.") + enable_default_loggers = False if enable_default_loggers and logger.isEnabledFor(logging.INFO): factories.append(LoggingStatLogger) @@ -681,6 +686,7 @@ def __init__( # For Prometheus, need to share the metrics between EngineCores. # Each EngineCore's metrics are expressed as a unique label. self.prometheus_logger = prometheus_factory(vllm_config, engine_idxs) + print(f"------{self.prometheus_logger}-") def record( self, From 7ac21187dc0f7ea1458b91229942fa72cc4a631c Mon Sep 17 00:00:00 2001 From: chaunceyjiang Date: Sat, 6 Sep 2025 00:30:49 +0000 Subject: [PATCH 3/4] [Bugfix] Disable the statslogger if the api_server_count is greater than 1 Signed-off-by: chaunceyjiang --- vllm/v1/metrics/loggers.py | 1 - 1 file changed, 1 deletion(-) diff --git a/vllm/v1/metrics/loggers.py b/vllm/v1/metrics/loggers.py index 7c86a2f14a11..717d021cb8f1 100644 --- a/vllm/v1/metrics/loggers.py +++ b/vllm/v1/metrics/loggers.py @@ -686,7 +686,6 @@ def __init__( # For Prometheus, need to share the metrics between EngineCores. # Each EngineCore's metrics are expressed as a unique label. self.prometheus_logger = prometheus_factory(vllm_config, engine_idxs) - print(f"------{self.prometheus_logger}-") def record( self, From 1c3be028ef4891b1c13c08a71ea27495fcb6738b Mon Sep 17 00:00:00 2001 From: chaunceyjiang Date: Mon, 8 Sep 2025 02:41:19 +0000 Subject: [PATCH 4/4] [Bugfix] Disable the statslogger if the api_server_count is greater than 1 Signed-off-by: chaunceyjiang --- vllm/v1/metrics/loggers.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/vllm/v1/metrics/loggers.py b/vllm/v1/metrics/loggers.py index 717d021cb8f1..347185d8341e 100644 --- a/vllm/v1/metrics/loggers.py +++ b/vllm/v1/metrics/loggers.py @@ -659,13 +659,14 @@ def __init__( factories: list[StatLoggerFactory] = [] if custom_stat_loggers is not None: factories.extend(custom_stat_loggers) - if client_count > 1: - logger.warning( - "AsyncLLM created with api_server_count more than 1; " - "disabling stats logging to avoid incomplete stats.") - enable_default_loggers = False + if enable_default_loggers and logger.isEnabledFor(logging.INFO): - factories.append(LoggingStatLogger) + if client_count > 1: + logger.warning( + "AsyncLLM created with api_server_count more than 1; " + "disabling stats logging to avoid incomplete stats.") + else: + factories.append(LoggingStatLogger) # engine_idx: StatLogger self.per_engine_logger_dict: dict[int, list[StatLoggerBase]] = {}