[BugFix] fix logger (#3666)

This commit is contained in:
ltd0924
2025-08-28 17:08:00 +08:00
committed by GitHub
parent 73cf6096da
commit e5015eea05
3 changed files with 48 additions and 33 deletions

View File

@@ -47,6 +47,7 @@ from fastdeploy.entrypoints.openai.serving_chat import OpenAIServingChat
from fastdeploy.entrypoints.openai.serving_completion import OpenAIServingCompletion
from fastdeploy.entrypoints.openai.serving_models import ModelPath, OpenAIServingModels
from fastdeploy.entrypoints.openai.tool_parsers import ToolParserManager
from fastdeploy.entrypoints.openai.utils import UVICORN_CONFIG
from fastdeploy.metrics.metrics import (
EXCLUDE_LABELS,
cleanup_prometheus_files,
@@ -61,7 +62,6 @@ from fastdeploy.utils import (
FlexibleArgumentParser,
StatefulSemaphore,
api_server_logger,
configure_uvicorn_logging,
console_logger,
is_port_available,
retrive_model_from_server,
@@ -416,6 +416,7 @@ def launch_api_server() -> None:
host=args.host,
port=args.port,
workers=args.workers,
log_config=UVICORN_CONFIG,
log_level="info",
) # set log level to error to avoid log
except Exception as e:
@@ -442,7 +443,7 @@ def run_metrics_server():
run metrics server
"""
uvicorn.run(metrics_app, host="0.0.0.0", port=args.metrics_port, log_level="error")
uvicorn.run(metrics_app, host="0.0.0.0", port=args.metrics_port, log_config=UVICORN_CONFIG, log_level="error")
def launch_metrics_server():
@@ -511,6 +512,7 @@ def run_controller_server():
controller_app,
host="0.0.0.0",
port=args.controller_port,
log_config=UVICORN_CONFIG,
log_level="error",
)
@@ -530,7 +532,6 @@ def launch_controller_server():
def main():
"""main函数"""
configure_uvicorn_logging()
load_model_register_plugins()
if args.local_data_parallel_id == 0:
if not load_engine():

View File

@@ -24,6 +24,50 @@ import zmq
from fastdeploy.utils import api_server_logger
UVICORN_CONFIG = {
"version": 1,
"disable_existing_loggers": False,
"formatters": {
"custom": {
"()": "colorlog.ColoredFormatter",
"format": "[%(log_color)s%(asctime)s] [%(levelname)+8s] %(reset)s - %(message)s%(reset)s",
"datefmt": "%Y-%m-%d %H:%M:%S", # 时间戳格式
"log_colors": {
"DEBUG": "cyan",
"INFO": "green",
"WARNING": "yellow",
"ERROR": "red",
"CRITICAL": "red,bg_white",
},
}
},
"handlers": {
"default": {
"class": "colorlog.StreamHandler",
"stream": "ext://sys.stderr",
"formatter": "custom",
},
},
"loggers": {
"uvicorn": {
"level": "INFO",
"handlers": ["default"],
"propagate": False,
},
"uvicorn.error": {
"level": "INFO",
"handlers": ["default"],
"propagate": False,
},
"uvicorn.access": {
"level": "INFO",
"handlers": ["default"],
"propagate": False,
"formatter": "custom",
},
},
}
class DealerConnectionManager:
"""

View File

@@ -38,7 +38,6 @@ import yaml
from aistudio_sdk.snapshot_download import snapshot_download as aistudio_download
from tqdm import tqdm
from typing_extensions import TypeIs, assert_never
from uvicorn.config import LOGGING_CONFIG
from fastdeploy import envs
from fastdeploy.logger.logger import FastDeployLogger
@@ -77,35 +76,6 @@ class ColoredFormatter(logging.Formatter):
return message
def configure_uvicorn_logging():
"""
uvicorn logger config
"""
# add timestamp to log
log_format = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
date_format = "%Y-%m-%d %H:%M:%S"
LOGGING_CONFIG["formatters"]["default"]["fmt"] = log_format
LOGGING_CONFIG["formatters"]["default"]["datefmt"] = date_format
LOGGING_CONFIG["formatters"]["access"]["fmt"] = log_format
LOGGING_CONFIG["formatters"]["access"]["datefmt"] = date_format
uvicorn_error_logger = logging.getLogger("")
uvicorn_access_logger = logging.getLogger("uvicorn.access")
for handler in uvicorn_error_logger.handlers[:]:
uvicorn_error_logger.removeHandler(handler)
for handler in uvicorn_access_logger.handlers[:]:
uvicorn_access_logger.removeHandler(handler)
console_handler = logging.StreamHandler(sys.stdout)
console_handler.setFormatter(logging.Formatter(log_format, date_format))
uvicorn_error_logger.addHandler(console_handler)
uvicorn_access_logger.addHandler(console_handler)
uvicorn_error_logger.setLevel(logging.INFO)
uvicorn_access_logger.setLevel(logging.INFO)
uvicorn_error_logger.propagate = False
uvicorn_access_logger.propagate = False
class DailyRotatingFileHandler(BaseRotatingHandler):
"""
like `logging.TimedRotatingFileHandler`, but this class support multi-process