Skip to content

Commit fbe5f21

Browse files
committed
fix: address review feedback for logging refactor
- Fix typo 'recive' -> 'receive' in router manager - Uppercase 'mtp' -> 'MTP' in status line for consistency - Only show MTP metric when MTP is actually active - Remove dead code: log_time_ready and unused time import - Add file handler to status logger when LIGHTLLM_LOG_DIR is set - Warn when log_stats_interval is below 5s minimum
1 parent 39c5a53 commit fbe5f21

File tree

3 files changed

+10
-27
lines changed

3 files changed

+10
-27
lines changed

lightllm/server/router/manager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -426,7 +426,7 @@ def _add_req(self, group_req_indexes: GroupReqIndexes):
426426
req._router_stop_str_matched = False
427427
req_group.append(req)
428428

429-
logger.debug(f"router recive req id {req.request_id} cost time {time.time() - req.start_time} s")
429+
logger.debug(f"router receive req id {req.request_id} cost time {time.time() - req.start_time} s")
430430
self.req_queue.extend(req_group)
431431
self.send_to_detokenization.send_pyobj(group_req_indexes, protocol=pickle.HIGHEST_PROTOCOL)
432432
return

lightllm/server/router/stats.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
from lightllm.server.core.objs import StartArgs
44
from lightllm.utils.log_utils import init_system_status_logger
55

6+
logger = logging.getLogger(__name__)
7+
68

79
class SystemStatusReporter:
810
def __init__(self, args, max_total_token_num, dp_size_in_node):
911
self.enabled = not args.disable_log_stats
1012
self.interval = max(5, args.log_stats_interval)
1113
if args.log_stats_interval < 5:
12-
logging.getLogger(__name__).warning(
13-
f"log_stats_interval={args.log_stats_interval}s is below minimum, using 5s"
14-
)
14+
logger.warning(f"log_stats_interval={args.log_stats_interval}s is below minimum, using 5s")
1515
self.max_total_token_num = max_total_token_num
1616
self.dp_size_in_node = dp_size_in_node
1717
self.status_logger = init_system_status_logger("router")

lightllm/utils/log_utils.py

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import logging
55
import sys
66
import os
7-
import time
87
from typing import Optional
98

109
_FORMAT = "%(levelname)s %(asctime)s [%(filename)s:%(lineno)d] %(message)s"
@@ -102,31 +101,15 @@ def init_system_status_logger(name: str):
102101
logger = logging.getLogger(f"lightllm.status.{name}")
103102
if not logger.handlers:
104103
logger.setLevel(logging.INFO)
104+
fmt = logging.Formatter(_STATUS_FORMAT, datefmt=_DATE_FORMAT)
105105
handler = logging.StreamHandler(sys.stdout)
106106
handler.flush = sys.stdout.flush
107-
fmt = logging.Formatter(_STATUS_FORMAT, datefmt=_DATE_FORMAT)
108107
handler.setFormatter(fmt)
109108
logger.addHandler(handler)
109+
if _LOG_DIR is not None:
110+
file_handler = logging.FileHandler(os.path.join(_LOG_DIR, f"status.{name}.log"))
111+
file_handler.setLevel(logging.INFO)
112+
file_handler.setFormatter(fmt)
113+
logger.addHandler(file_handler)
110114
logger.propagate = False
111115
return logger
112-
113-
114-
_log_time_mark_dict = {}
115-
116-
117-
def log_time_ready(mark_name, time_count: int):
118-
"""
119-
time_count 间隔时间超过多少s调用该函数会返回True,否则返回False
120-
用于控制一些日志输出的频率
121-
"""
122-
global _log_time_mark_dict
123-
124-
if mark_name not in _log_time_mark_dict:
125-
_log_time_mark_dict[mark_name] = time.time()
126-
return False
127-
cur_time_mark = time.time()
128-
if cur_time_mark - _log_time_mark_dict[mark_name] >= time_count:
129-
_log_time_mark_dict[mark_name] = cur_time_mark
130-
return True
131-
else:
132-
return False

0 commit comments

Comments
 (0)